前端开发在package.json通过命令行设置环境变量
如果您发现本文排版有问题,可以先点击下面的链接切换至老版进行查看!!!
前端开发在package.json通过命令行设置环境变量
npm install cross-env --save-dev
{
"scripts": {
"dev": "cross-env CURRENT_ENV=development webpack-dev-server --inline --progress",
"build": "cross-env CURRENT_ENV=production node build/build.js
}
}
执行npm run dev
即可,在js文件里面就可以通过process.env.CURRENT_ENV
得到值development
执行scripts里面命令实际相当于在执行
node_modules/.bin/cross-env CURRENT_ENV=development webpack-dev-server
有点懵?
我们一般是安装开发依赖时是执行npm install xxx --save-dev
的,这时在node_modules
文件里面会有个.bin
文件夹,有的文件系统可能是隐藏文件夹,.bin
文件夹里面的文件夹一般是可以执行文件
上面是针对的开发环境,设置生产环境同样适用,并且生产环境还可以使用process.env.argv
,它是一个数组,里面存放node运行的参数。
上面的package.json里面有npm run build
命令,我们可以在node build/build.js
后面加上参数,比如
{
"build": "cross-env CURRENT_ENV=production node build/build.js testArg"
}
这个参数testArg就会在process.env.argv
里面了,需要注意的是,这个process.env.argv
并不是只有两个参数build/build.js
和testArg
,该数组里面第一个是当前node的目录,比如/Users/shadow/.nvm/versions/node/v8.11.4/bin/node
,所以testArg的index是数组里面的第三个。使用时最好把process.env.argv
打印下,确定好自己设置的参数的位置再使用。- 分类:
- Web前端
更新时间: