And*_*rew 2 npm webpack vue.js axios
关于此处记录的模式和环境变量
https://cli.vuejs.org/guide/mode-and-env.html#modes
例如,我很困惑为什么我不能将以下变量设置为模拟。正如文档似乎所说,这将是您传入的模式!
process.env.NODE_ENV
Run Code Online (Sandbox Code Playgroud)
我在package.json中创建了以下 server-mock 命令字符串,如下所示
"serve-mock": "vue-cli-service serve --mode mock"
Run Code Online (Sandbox Code Playgroud)
但当我跑步时
npm run server-mock
Run Code Online (Sandbox Code Playgroud)
process.env.NODE_ENV仍然设置为development而不是mock。我应该在.env.mock文件中设置它吗?我认为它会根据作为模拟传入的模式来设置?
Vue CLI 的serve命令使用mode选项从特定于模式的.env文件加载环境变量。它还设置NODE_ENV了三种标准模式一(test,development或production)仅如果尚未设置。但是,如果指定的模式不是标准模式(如mock),Vue CLI默认为development。
所以,你可以设置NODE_ENV=mockinside.env.mock绕过NODE_ENV上面提到的设置。
或者,您可以在 *nix shell 中的 NPM 脚本的命令行上进行设置NODE_ENV:
{
"scripts": {
"serve-mock": "NODE_ENV=mock vue-cli-service serve"
}
}
Run Code Online (Sandbox Code Playgroud)
对于跨平台解决方案(包括 Windows),您可以安装cross-env(按照评论中的建议),并按如下方式编辑您的 NPM 脚本:
{
"scripts": {
"serve-mock": "cross-env NODE_ENV=mock vue-cli-service serve"
}
}
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
2745 次 |
| 最近记录: |