将npm包作为gulp任务运行

将npm包作为gulp任务运行,gulp,Gulp,我想使用一个gulp任务来运行这个包。它只提供有关通过cli或节点运行的说明,我想知道是否有人可以给我一些关于如何执行此操作的提示。我假设sort sass不接受文件流作为输入,但它需要字符串或缓冲区 以下是与npm模块页面中相同的示例: var fs = require('fs'); var sortSass = require('sort-sass'); gulp.task('sort-sass', [ /* list task deps here*/ ], function(){

我想使用一个gulp任务来运行这个包。它只提供有关通过cli或节点运行的说明,我想知道是否有人可以给我一些关于如何执行此操作的提示。

我假设
sort sass
不接受文件流作为输入,但它需要字符串或缓冲区

以下是与
npm模块
页面中相同的示例:

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异步模块
):

另一个解决方案是用包装这样的模块,这样您就可以编写如下内容:

 var sortSass = require('sort-sass');

 gulp.task('sort-sass', [/* task deps here */], function(){
  return gulp.src('some.sass')
             .pipe(sortSass())
             .pipe(gulp.dest('output.sass');
 });
 var sortSass = require('sort-sass');

 gulp.task('sort-sass', [/* task deps here */], function(){
  return gulp.src('some.sass')
             .pipe(sortSass())
             .pipe(gulp.dest('output.sass');
 });