Gulpとbrowserifyを使用して、.jsx
ファイルを.js
ファイルに変換しようとしています。
var gulp = require('gulp');
var browserify = require('browserify');
var reactify = require('reactify');
gulp.task('js', function () {
browserify('public/javascripts/src/app.jsx')
.transform(reactify)
.bundle()
.pipe(gulp.dest('public/javascripts/dist'))
});
`` `
上記はArguments to path.resolve must be strings
を投げました。 vinyl-source-stream
を使用してなんとか回避できました
var source = require('vinyl-source-stream');
...
.bundle()
.source('app.js')
...
なぜこれが機能するのですか?私はnodejsとgulpがかなり新しいです。プロジェクトとソースコードのREADMEを読んだ後、私はまだ混乱しています。
この記事を読むと gulpプロジェクトのビジョン、歴史、未来 がいくつかの概念を明確にする助けになると思います。
基本的に、vinyl-source-streamは 読解可能なストリームbrowserifyから取得 をビニルストリームは、gulpが取得することを期待しているものです。
ビニルストリームは仮想ファイル形式であり、Gulpの基本です。このおかげでvinylストリームGulpは異なる変換の間に一時ファイルを書き込む必要がありません。そして、これはGruntよりも優れている主な利点の1つです。
このモジュールは、このような従来のテキストストリームをgulpと組み合わせて簡単に使用できるようにするブリッジです。