我想有一个gulpfile,它首先将我的es6代码转换成es5并将其保存到一个目录中,然后将其浏览化(在每个文件中,而不仅仅是条目文件中)并将其保存到另一个目录中,最后我想将其最小化并将其作为.min.js文件放在browserified文件夹中。下面是结果应该是什么样子的图表:
src/
es6/
index.js
mod.js
es5/
index.js
mod.js
es5-browser/
index.js
index.min.js
mod.js
mod.min.js到目前为止,这是我的gulpfile,但我一直收到一个无法找到模块的错误:
var gulp = require('gulp');
var traceur = require('gulp-traceur');
var browserify = require('gulp-browserify');
var sourcemaps = require('gulp-sourcemaps');
gulp.task('es5ize', function () {
return gulp.src('src/es6/**/*.js')
.pipe(sourcemaps.init())
.pipe(traceur({sourceMaps: true}))
.pipe(sourcemaps.write())
.pipe(gulp.dest('src/es5'))
.pipe(browserify({
debug : true
}))
.pipe(gulp.dest('src/es5-browser'))
;
});我知道我不应该使用gulp browserify,但我也不能让这样的东西在黑胶上工作。
它一直运行到browserify步骤
我怎么才能让它工作呢?
编辑:
我希望能够保持这一点,而不必执行任何东西,因为我最终也想对此使用watchify。
与此类似的所有其他示例首先让browserify创建一个包,然后操作该包,但这意味着它将始终启动browserifed,这是我不想要的。它们似乎还需要为browserify指定一个条目文件,但我想指定一个glob,并让它转换所有匹配的内容
发布于 2014-09-12 18:34:35
您需要traceur将其编译为commonjs模块,以便browserify能够理解.pipe(traceur({modules: 'commonjs' }))
https://stackoverflow.com/questions/25677930
复制相似问题