我添加了babelify转换,并且我注意到我的mainScripts任务现在需要大约10秒而不是之前的0.5秒。
我希望仅在环境或产品时应用 .transform(" babelify",{presets:[" es2015"]})为了加快开发过程中的任务。
我确定当前环境的功能
- Does HAWQ will distribute data to the old data-nodes ? What will happen actually?
- Does HQWQ will redistribute the data of table 'table_random' overall the cluster?
我的脚本任务:
var isLocal = function() {
return argv.env === 'localdev' || argv.env === 'dev';
};
如何实现这一目标?
答案 0 :(得分:0)
对browserify
的调用会返回绑定程序,而transform
调用只是将其链接起来,因此您可以选择通过执行以下操作来调用transform
:
gulp.task('mainScripts', function() {
var bundler = browserify('./app/app.js', {
debug: true
});
if (!isLocal()) {
bundler = bundler.transform("babelify", { presets: ["es2015"] });
}
return bundler
.bundle()
.on('error', function(err) {
...
}
...
或者,您可以查看watchify
的一些gulp食谱,这可以大大提高您的增量构建时间。
答案 1 :(得分:0)
如何使用.plugin
?
var babelify = function (b) {
return isLocal()
? b
: b.transform("babelify", {presets: ["es2015"]});
};
// .plugin(babelify)
browserify Plugins部分说:插件take the bundle instance as their first parameter
对于某些更高级的用例,转换不能充分扩展。插件是将bundle实例作为第一个参数,将选项哈希作为第二个参数的模块。
正在应用的插件的格式如下:
var babelify = function (b) {
return isLocal()
? b
: b.transform("babelify", {presets: ["es2015"]});
};
gulp.task('mainScripts', function() {
return browserify('./app/app.js', {
debug: true
})
.plugin(babelify)
.bundle()
.on('error', function(err) {
...
}
...