【发布时间】:2017-08-17 14:40:04
【问题描述】:
根据这篇文章,Ruby Sass 正在消失(除非有新的维护者接受它)并被 Dart 实现所取代:
有谁知道是否有 Gulp 或 Grunt 的插件正在开发中?
【问题讨论】:
根据这篇文章,Ruby Sass 正在消失(除非有新的维护者接受它)并被 Dart 实现所取代:
有谁知道是否有 Gulp 或 Grunt 的插件正在开发中?
【问题讨论】:
几个月前我在做一个个人项目,想要 dart-sass 和 gulp,所以我做了自己的基本功能,直到其他人出现并做出更好的东西。我不记得当时 dart-sass 是哪个版本的,但无论如何这里是函数。它就在 gulpfile 中。
function sassify(options) {
return through.obj(function (file, enc, cb) {
options = options || {};
options.file = file.path;
// if (file.sourceMap) {
// options.sourceMap = true;
// options.outFile = output.path('css');
// }
sass.render(options, function (err, result) {
if (err) {
console.error("Sass Error: " + err.message);
}
else {
file.contents = result.buffer;
// if (file.sourceMap) {
// applySourceMap(file, result.map);
// }
}
cb(err, file);
});
});
}
当时,dart-sass 还没有源映射,所以我只是将这些东西插入并在它们有时将其注释掉。 我是这样使用函数的:
gulp.task('build:css', function () {
gulp.src(input.sass)
// .pipe(sourcemaps.init())
.pipe(sassify())
// .pipe(sourcemaps.write(output.path('cssmap')))
.pipe(concat(output.path('css')))
.pipe(gulp.dest('.'));
});
【讨论】:
从 gulp 中使用 dart-sass 应该很简单:
https://www.npmjs.com/package/dart-sass#from-npm
npm install dart-sass
var sass = require('dart-sass');
sass.render(...)
虽然不知道咕噜声。
【讨论】:
自从 Ruby Sass 被弃用和 Dart Sass 首次正式发布以来,我最近向 npm 注册表贡献了 grunt-dart-sass 包,看起来另一个用户贡献了 gulp-dart-sass。由于这些是用户贡献的包,它们不是由 Dart Sass 的制造者自己创建的,但仍然与 Dart Sass API 交互。希望grunt-contrib-sass 项目也能尽快升级他们的包以使用 Dart Sass。
【讨论】: