在取消节点- SASS之后,我已经将我的Gulp文件更改为在gulp-sass中使用Dart sass。
然而,我似乎在努力使它真正发挥作用。
我已经设置了我的gulp文件函数来使用它,就像NPM页面描述的那样。唯一的区别是,我在series中使用它,而不是像演示的那样直接使用它。
function scss () {
return src(`${__dirname}/.../*.scss`)
.pipe(sass({outputStyle : 'expanded', cache : '/tmp/sass-cache'}).on('error', sass.logError))
.pipe(postcss([ autoprefixer() ]))
.pipe(dest('System/cache'));
}我的系列电话是:
exports.default = series(deleteDirs, createDirs, scss, build, compile, preview);当我运行gulp时,我得到:
Starting 'scss'...
'scss' errored after 8.19 ms
TypeError: sass is not a function
at scss (/.../gulpfile.js:98:15)节点版本:10.13.0NPM版本:6.4.1nvm版本: 0.35.3 (我在此之前做过nvm use 10 )
我确实使用了较早版本的npm,因为我在前面看到的一篇文章中说,更新的版本可能与这些东西有问题。
发布于 2022-11-24 10:32:10
您需要更改sass编译器,以使用dart-sass,而不是默认的节点sass,如下所示:
const sass = require('gulp-sass');
sass.compiler = require('sass');或者对于第5版的gulp:
const sass = require('gulp-sass')(require('sass'));https://stackoverflow.com/questions/74108252
复制相似问题