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 / 精选资源

浏览全部教程

面试题

学习网站

前端培训
自己甄别

前端书籍

关于朱安邦

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

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

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

关注我: Github / 知乎

于2021年离开前端领域,目前重心放在研究区块链上面了

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

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

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

于2021年离开前端领域,目前从事区块链方面工作了