我想使用gulp任务运行此sort-sass包。它只提供了通过cli或节点运行它的说明,我想知道是否有人可以给我一些如何解决此问题的提示。
答案 0 :(得分:0)
我认为compareTo()
不接受文件流作为输入,但它需要字符串或缓冲区。
此处的示例与sort-sass
页面中的示例相同:
npm module
这里的异步版本中的任务相同(相同的模式适用于所有其他var fs = require('fs');
var sortSass = require('sort-sass');
gulp.task('sort-sass', [ /* list task deps here*/ ], function(){
var sassString = fs.readFileSync('some.sass');
var sortedSassString = sortSass(sassString);
// do something here (perhaps write it)
fs.writeFileSync('output.sass');
});
):
npm async modules
另一个解决方案可能是用a gulp plugin that deals with buffers包装这样的模块,这样你就可以这样写:
var fs = require('fs');
var sortSass = require('sort-sass');
gulp.task('sort-sass', [ /* list task deps here*/ ], function(done){
// read the file
fs.readFile('some.sass', function(err, sassString){
if(err){
return done(err);
}
var sortedSassString = sortSass(sassString);
// do somthing else with the string...
// if you want to write it somewhere
fs.writeFile( 'filename.sass', sortedSassString, function(done);
});
});