1

gulp-sass プラグインを使用して、gulp を使用して SCSS を CSS コードに変換しています。これはすべて正常に動作していますが、gulp を使用して Unix パイプから入力 (SCSS コード) を受け取り (つまり、 read process.stdin)、これを消費して、出力を にストリーミングしたいと考えていprocess.stdoutます。

process.stdin周りを読んでからReadableStream、ラップしてから、gulpタスクで使用vinylできるようです。stdin

gulp.task('stdin-sass', function () {
    process.stdin.setEncoding('utf8');
    var file = new File({contents: process.stdin, path: './test.scss'});
    file.pipe(convert_sass_to_css())
        .pipe(gulp.dest('.'));
});

ただし、これを行うとエラーが発生します。

TypeError: file.isNull is not a function

これはどういうわけか特別だと思いますstdinが、node.js の公式ドキュメントには true であると記載されていますReadableStream

4

1 に答える 1