Gulp 判断生产环境和开发环境

🌙
手机阅读
本文目录结构

生产环境和开发环境判断

series()parallel() 被调用时,任务(tasks)被立即组合在一起。这就允许在组合中进行改变,而不需要在单个任务(task)中进行条件判断。

下面这是开发中,经常用到的方式;

const { series } = require('gulp');
function minify (cb) {
    // body omitted
    console.log('axihe---minify(生产环境)');
    cb();
}
function transpile (cb) {
    // body omitted
    console.log('axihe---transpile', process.env.NODE_ENV);
    cb();
}
function livereload (cb) {
    // body omitted
    console.log('axihe---livereload(开发环境)');
    cb();
}
if (process.env.NODE_ENV === 'production') {
    // 生产环境
    exports.default = series(transpile, minify);
} else {
    // 开发环境
    exports.default = series(transpile, livereload);
}

注意,如果你们团队内有人使用windows开发,需要使用 cross-dev 来实现;

npm install --save-dev cross-env

修改 package.json

"scripts": {
    "build": "cross-env NODE_ENV=production gulp",
    "dev": "cross-env NODE_ENV=dev gulp"
},

运行生产或者开发

运行生产环境

npm run build

运行开发环境

npm run dev

https://a.axihe.com/npm/gulp/WX20200614-183015.png

axihe
axihe

AXIHE / 精选教程

浏览全部教程

HTML

CSS

JS

关于朱安邦

我叫 朱安邦,阿西河的站长,在杭州。

以前是一名平面设计师,后来开始接接触前端开发,主要研究前端技术中的JS方向。

业余时间我喜欢分享和交流自己的技术,欢迎大家关注我的 Bilibili 和抖音。

关注我: Github / 知乎

如果你加我的私人微信,麻烦写上您的 称呼,所在地区,职业,方便我备注,谢谢


本站的微信公众号

阿西河前端教程

Anbang

安邦的私人微信

微信号: yaolushan

Anbang

Bilibili(B站)

朱安邦

Anbang

我叫朱安邦,阿西河的站长

目前在杭州从事区块链周边的开发工作,机械专业,以前从事平面设计工作。

2014年底脱产在老家自学6个月的前端技术,自学期间几乎从未出过家门,最终找到了满意的前端工作。更多>

axihe