如何配置grunt-sass以使用底层node-sass监视选项来监视更改?
我知道我可以使用grunt-contrib-watch实现相同的功能来监视更改并重新运行grunt-sass任务,但这会更慢,因为它将重新编译整个事情而不仅仅是编译更改。
谢谢!
答案 0 :(得分:3)
回答我自己的问题,如果这可以帮助其他人:
我找到解决此问题的唯一方法是通过grunt使用node-sass CLI。要实现此目的,请安装令人惊讶的grunt-exec任务并将其设置为使用--watch
选项运行命令。
示例用法(支持多个includePath目录):
exec: {
nodeSass: {
cmd: function() {
// Include path option string built from the gruntConfig.cssFiles array.
var includeFilesOption = gruntConfig.cssFiles.map(function(cssFilePath) {
return '--include-path ' + cssFilePath;
}).join(' ');
return 'node-sass app/scss/style.scss app/generated/style.css' + includeFilesOption + ' --watch';
}
}
}
您还需要通过npm安装node-sass
。在这种情况下,您只需将以下内容添加到package.json
文件中:
"scripts": {
"install": "npm install node-sass -g"
},