长期以来,Sass 存在多种实现。 最值得注意的是规范的 Ruby 版本,目前版本为 3.5.6。 然后是 LibSass,C++ 版本,目前版本为 3.4,并且…
当前 LibSass 3.4 应该与 Sass 3.4 兼容。
LibSass 值得注意的是,它为大多数 Sass 移植版本提供支持。 超过 30 种,显然,包括最受欢迎的一个:node-sass,它为数百万想要运行 npm 式 JavaScript 基于开发环境并避免 Ruby 依赖项的项目提供了 Sass。
LibSass 没有及时更新到当前规范的 Sass,这有点不幸,但我认为它处于冻结状态,因为有人指出 LibSass 永远不会成为规范的 Sass。 更新:它并没有处于冻结状态。 实际上是 Ruby Sass 曾经处于冻结状态,目的是让 LibSass 追赶上来。 我写这篇文章的时候,LibSass 已经到了 3.5.2 版本,所以已经很接近了。
Dart Sass 刚刚发布了 1.0.0 版本,现在与 Ruby Sass 3.5.6 100% 兼容。 他们 宣布 Ruby Sass 现在已经开始弃用,并且将在 2019 年 3 月 26 日之后不再维护。
Dart Sass 的未来看起来很不错
另一个重大公告:从今天开始,我将在 @SassCSS 上全职工作。 这是我整个职业生涯的目标,我很高兴它终于实现了。
— Blue Gay Carmen San Diego (@nex3) 2018 年 4 月 3 日
Dart Sass 的兼容性也非常棒,因为 node-sass 现在可以切换到 Dart Sass 绑定,并完全更新。 它会这样做吗? 我不知道。 LibSass 和 node-sass 的维护者是同一个人(Michael Mifsud),并且有 30 多个 LibSass 绑定,我无法想象 LibSass 会消失。 我想我们只能拭目以待。 我敢肯定,有人会以某种方式创建 Dart Sass 的节点版本。
我个人很想看到一个 Web Worker 版本。
我想现在还处于早期阶段,但对于前端 Web 开发的初学者来说,Dart Sass 并不像 Ruby Sass 那样容易上手。
新的 Sass 安装页面不再列出 Ruby 的安装方式,它只列出了安装 Dart Sass 的各种方式(不包括 GUI 工具)。 当前版本的 Dart Sass 甚至无法通过简单的命令行命令来监视文件,就像 Ruby Sass 一样。
我相信在接下来的 12 个月里,Sass 团队会解决这些 bug,我只是希望他们在使用 Dart Sass 变得像使用 Ruby Sass 一样容易之前再更改他们的安装说明。
我教初学者如何使用 Sass,越容易上手越好。 我知道对于有经验的开发人员来说,这不是问题,因为他们无论如何都会使用某种带有监视功能的构建工具,但是对于想要用最少的设置和安装来创建一个网页的开发新手来说,这是一个挑战。 使用 Ruby Sass,他们只需要“gem install sass”(至少在 Mac 上)和“sass –watch input:output”,就可以开始了。
再见,Ruby Sass,我会想念你的!
LibSass 和 Node Sass 的维护者在这里。 一些值得注意的修正
LibSass 已经有一段时间达到 3.5 兼容性,这些功能都包含在最新的 Node Sass 版本中,供所有人使用。
之前是 Ruby Sass,而不是 LibSass,处于功能冻结状态,以便 LibSass 可以追赶上来。
我们正在积极开发即将发布的 3.6 功能,其中一些功能已经上线。 我们还在研究纯 WebAssembly 实现,因为我们非常喜欢 Web :D
这就是为什么我认为专注于技术的根本,而不是包装器,是最好的长期解决方案。 想想 Google 已经关闭了多少我们依赖多年的东西,但 20 年前的核心网站技术几乎都还在工作。
我无法弄清楚如何设置它。 我下载并解压缩了 zip 文件,并编辑了我的路径变量,但控制台中既没有识别
sass
,也没有识别dart-sass
。 我以为我可能需要运行批处理文件,但这没有改变任何东西,从文件夹内部运行命令,仍然没有。我遇到了同样的问题。 你要确保你的路径指向“dart-sass”文件夹,而不是该文件夹内的“src”文件。 这就是我犯的错误。 一旦我确保路径指向“dart-sass”文件夹,它就正常工作了。
谢谢 Michael,现在可以了。
是的,我无法弄清楚如何让它“监视”/将我的 scss 编译到我的 css 文件中。 Ruby 太容易了。 如果有人知道怎么做,请告诉我!
是的,根据这篇文章(http://sass.logdown.com/posts/7081811)在 Sass 博客上,目前,
–watch
命令不支持 Dart Sass,但他们说添加它是一个高度优先事项。这就是我不明白为什么他们目前(今天 - 2018 年 4 月 18 日)在 sass-lang 网站上将 Dart Sass 列为安装 Sass 的官方方式(当你点击主导航中的安装链接时,它会告诉你使用 Dart Sass),而 Dart Sass 甚至没有简单的
–watch
命令。 这会让 Sass 新手感到困惑。 为什么要等到他们构建了–watch
命令之后才更改网站,将 Dart Sass 列为安装 Sass 的官方方式。明确地说,你当然可以从命令行使用 Dart Sass 将 Sass 文件编译为 CSS 文件,你只需要在每次想要编译时手动输入编译命令,这通常不是一种非常高效的工作方式。 此外,根据文档,我认为没有办法编译整个 Sass 文件夹,如果你有多个主 Sass 文件(不包括导入到主 Sass 文件的局部文件),你必须逐个编译每个 Sass 文件。
太令人沮丧了! 那么我如何让它编译呢?