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