弃用 Node Sass 以 Dart Sass 代替
2020年10月26日,Sass 官方团队正式宣布 Libsass 将弃用,以及基于它的 Node Sass 和 SassC,并且建议用户使用 Dart Sass。
2020年10月26日,Sass 官方团队正式宣布 Libsass 将弃用,以及基于它的 Node Sass 和 SassC,并且建议用户使用 Dart Sass。
之前用cli脚手架搭完之后,直接把vue.config.js
丢项目根目录就完事了,前几天用脚手架重新搭了个项目,安装完各种依赖之后,运行竟然莫名其妙的报错了:
ValidationError: Invalid options object. Sass Loader has been initialised using an options object that does not match the API schema.
近几年web应用的发展可以用疯狂来形容,依靠浏览器的支持以及前端技术和框架的发展,很多应用已经把大量的逻辑从服务器端迁移到了浏览器端,使用前后端分离技术,浏览器端与用户进行交互来完成复杂的逻辑。由于这个发展趋势,Web应用的前端代码的复杂度大大提高,尤其是 JavaScript 和 CSS 代码的数量大幅增加,面对空前庞大的css和js代码量,形成科学的代码组织方法和命名规范迫在眉睫。
npm install -g node-sass
node-sass -w xxx.scss xxx.css --output-style expanded
nested:嵌套缩进的css代码,它是默认值
expanded:没有缩进的、扩展的css代码
compact:简洁格式的css代码
compressed:压缩后的css代码
VUE
项目在本地运行样式没有问题,上线后发现样式没有生效,在浏览器调试模式下,发现-webkit-box-orient: vertical;
属性没了。
Sass有两种后缀名文件:一种后缀名为sass,不使用大括号和分号;另一种就是我们这里使用的scss文件,这种和我们平时写的CSS文件格式差不多,使用大括号和分号。建议使用后缀名为scss的文件,以避免Sass后缀名的严格格式要求报错。
macOS 系统直接运行下面的命令即可:
SASS_BINARY_SITE=https://npm.taobao.org/mirrors/node-sass/ npm install node-sass