CSS预处理器SASS将迁移到Dart Sass
所以
node-sass可以换成dart-sass
为什么重写Sass?
Sass的主要实现有Ruby Sass 11和LibSass 20(node-sass底层使用的是LibSass),它们都有各自的优缺点。
Ruby Sass的实现语言是高级语言Ruby,更容易迭代,但存在运行速度慢,不易安装的缺点。LibSass虽然速度快,但它的开发语言是C/C++,迭代速度慢,无法快速地添加各种功能。
为什么使用Dart?
Dart的运行速度是真的快,对于大型样式文件,Dart Sass的处理速度是Ruby Sass的5~10倍,且只比LibSass慢1.5倍左右。
同时,Dart是一门具备静态类型的动态语言,对比C/C++甚至是Ruby,Dart相对更容易上手且代码也更易于编写和维护。此外,Dart具备编译输出为JavaScript的能力,使得Dart Sass可以兼容NodeJS平台。
各种实现的后续规划?
LibSass作为目前性能最好的Sass实现,后续将继续维护,只是它不再需要背负快速添加各种新功能的压力。
Ruby Sass目前也会同步维护,但在无人接手的情况下,它将逐渐边缘化。Sass项目组后续主要精力将转移到Dart Sass,其稳定版本预计在2017年初放出。
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 记一次.NET内存居高不下排查解决与启示
· 探究高空视频全景AR技术的实现原理
· 理解Rust引用及其生命周期标识(上)
· 浏览器原生「磁吸」效果!Anchor Positioning 锚点定位神器解析
· 没有源码,如何修改代码逻辑?
· 分享4款.NET开源、免费、实用的商城系统
· 全程不用写代码,我用AI程序员写了一个飞机大战
· MongoDB 8.0这个新功能碉堡了,比商业数据库还牛
· 白话解读 Dapr 1.15:你的「微服务管家」又秀新绝活了
· 记一次.NET内存居高不下排查解决与启示