Gulp任务创建main.js的DEV和PROD版本

厄姆·珀西(Oam Psy)

我是Gulp的新手,并且一直在使用gulp-minifygulp-uglify通过创建一个整体main.js文件gulp-requirejs

但是,我需要创建此main.js文件的2个版本,一个用于我的DEV环境,一个用于PROD。

原因是在某些.js文件中,我列出了URL,例如:

currentPage == '/products/chairs.html'

但是,将这些html文件移到我的.Net结构中时,实际的URL是:

currentPage == 'goodsandservices/products/our-chairs.html'

我当前的rJS任务如下:

gulp.task('rjs', function() {

  rjs({
        baseUrl: config.src.js,
        out: 'main.js',
        name: 'main',
        mainConfigFile: config.src.js + '/main.js',
        exclude: [ 'angular']
    })
    .pipe(prod ? uglify({ mangle: false, compress: { drop_console: true } }) : gutil.noop())
    .pipe(gulp.dest(config.dest.js))
});

我尝试使用gulp-replace,并将我的rjs任务更新为:

gulp.task('rjs', function() {

  rjs({
        baseUrl: config.src.js,
        out: 'main.js',
        name: 'main',
        mainConfigFile: config.src.js + '/main.js',
        exclude: [ 'angular']
    })
    .pipe(prod ? uglify({ mangle: false, compress: { drop_console: true } }) : gutil.noop())
            .pipe(replace(/NETStructure/g, 'goodsandservices'))
    .pipe(gulp.dest(config.dest.js))
});

在我的.js文件中,我已将URL更新为:

currentPage == /NETStructure/g'/products/chairs.html'

但是,这似乎没有奏效。

昏迷

我建议您将这些字符串保留在一个对象中,并为同一个对象提供两个不同的文件,例如:

constants.dev.js

var constants = {
    chairs: '/products/chairs.html'
};

constants.prod.js

var constants = {
    chairs: 'goodsandservices/products/our-chairs.html'
};

然后,您只需要包括正确的文件(或连接在一个闭包中的串联文件),然后:

currentPage == constants.chairs

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

Gulp任务创建main.js的DEV和PROD版本

来自分类Dev

Grunt.js DEV与PROD任务

来自分类Dev

Grunt.js DEV与PROD任务

来自分类Dev

gulp-autoprefixer和gulp-sass使用默认的gulp任务创建无限的sass编译循环

来自分类Dev

如何创建参数化和可重用的Gulp任务

来自分类Dev

Browserify和Babel gulp任务

来自分类Dev

gulp 版本 4 任务不再执行操作

来自分类常见问题

Gulp.js任务,返回src吗?

来自分类Dev

Gulp + docker.js,任务集成

来自分类Dev

使用Laravel Elixir运行Gulp任务不会版本所有js文件

来自分类Dev

Gulp 更改后仍在运行旧版本的任务

来自分类Dev

如何在create-react-app中划分prod和dev版本

来自分类Dev

使Gulp任务同步而无需创建其他任务

来自分类Dev

使Gulp任务同步,而无需创建其他任务

来自分类Dev

使用nodeJS和Gulp任务运行器自动缩小

来自分类Dev

gulp 4系列和并行的多人SPA任务组合

来自分类Dev

Gulp监视任务序列和浏览器同步

来自分类Dev

Gulp.js启动sass任务,但未完成

来自分类Dev

在gulp任务中使用node.js函数

来自分类Dev

如何在Gulp.js任务中间添加CSS文件?

来自分类Dev

Gulp-js仅将保存的文件传递给任务

来自分类Dev

Gulp任务无法访问karma.conf.js文件

来自分类Dev

如何从Node.js运行gulp任务-gulp.start()的更好替代方法?

来自分类Dev

Gulp与browserify:找不到模块src / js / main.js

来自分类Dev

Gulp JS 和 SASS 缩小散列文件名并替换 index.html 中的 href 和 src 的任务

来自分类Dev

Gulp:如何创建可编译多个SASS文件的任务?

来自分类Dev

为gulp / knex创建/删除数据库任务

来自分类Dev

我应该如何用Gulp创建完整的版本?

来自分类Dev

Gulp 网络服务器任务和监视任务不能一起工作

Related 相关文章

热门标签

归档