在 Gulp 中是否可以使用字符串而不是源文件开头?

Gie*_*ers 5 string sass gulp

通常,当我使用 Gulp 时,我会从以下内容开始:

gulp.src('some/file.txt).pipe( ... ) // etc
Run Code Online (Sandbox Code Playgroud)

我也可以使用字符串而不是文件吗?例如:

gulp.str('some text').pipe( .... ) // etc
Run Code Online (Sandbox Code Playgroud)

我正在处理的用例是我正在创建一个 SCSS 字符串临时并希望将其通过管道传输到 libsass。但我不想创建一个临时文件,而是使用原始字符串。例子:

var myString = 'html { color: red; }';
gulp.str(myString).pipe(sass()) // etc
Run Code Online (Sandbox Code Playgroud)

这可能吗?

dem*_*isx 2

你可以尝试这样的事情:

var file = require('gulp-file');

gulp.task('build', function () {
  var str = 'Some string value that you want to pipe';

  return file('tmp.js', str, { src: true }) // The file name can be anything
    ... // <- Piping contents of str here
    .pipe(gulp.dest('xxx'));
});
Run Code Online (Sandbox Code Playgroud)