javascript を babel でトランスパイルするための単純な Gulp 構成があります。
gulp.task('js_dev', function () {
var bundler = browserify({entries: ['js/index.js'], debug: true});
bundler.external('jquery');
return bundler
.transform("babelify", {presets: ["es2015"]})
.bundle()
.on('error', function (err) {
console.error(err);
this.emit('end');
})
.pipe(source('dev.js'))
.pipe(gulp.dest(jsdest));
});
これで、開発ファイルをインポートできます。しかし、npm でインストールされたパッケージ (isotope、textfit、babel-polyfill...) をインポートできません。
たとえば、index.js ファイルに babel-polyfill をインポートすると、次のようになります。
import "babel-polyfill";
gulp でエラーは発生せず、コードは dev.js に追加されているようですが、機能していません。要求することもできません。空のオブジェクトが返されます。
他の npm モジュール (たとえば同位体) についても同じことが言えます。それらをrequire
実行すると、空のオブジェクトが返されます。また、Isotope は require で動作するはずです。
何が起こっているのですか?
ありがとう。