// npm
npm i --save-dev gulp-preprocess
// yarn
yarn add -d gulp-preprocess
const os = require('os')
function getLocalHost(){
const netWork = os.networkInterfaces()
const lcoalKey = Object.keys(netWork)[0]
return netWork[lcoalKey][1].address
}
module.exports = getLocalHost
const preprocess = require('gulp-preprocess')
const ENV = process.env.NODE_ENV || 'dev' // 获取环境变量
const getLocalHost = require('./getLocalHost.js')
function JS(){
return src('./index.js')
.pipe(preprocess({ context: { NODE_ENV: EVN_TYPE, URL: getLocalHost() } }))
// 设置源码内变量
....
}
js 配置
{
// 默认地址
baseUrl: '/',
// 开发地址
// @if NODE_ENV='dev'
baseUrl: '/* @echo URL */'
// @endif
}
命令行设置环境变量
set NODE_ENV=dev&&gulp // 开发模式
set NODE_ENV=production&&gulp // 生产模式