【无标题】记录vue-CLI的环境究竟是怎么回事

## 介绍vue-CLI的环境变量

模式和环境变量# 模式# 模式是 Vue CLI 项目中一个重要的概念。默认情况下,一个 Vue CLI 项目有三个模式:

development 模式用于 vue-cli-service serve
test 模式用于 vue-cli-service test:unit
production 模式用于 vue-cli-service build 和 vue-cli-service test:e2e 你可以通过传递 --mode 选项参数为命令行覆写默认的模式。例如,如果你想要在构建命令中使用开发环境变量:

以上内容来自官网,容我慢慢介绍:
1,首先是:development 模式
如果你的项目众没有.env(该文件和package.json同级)文件,那执行npm run serve命令之后
以下就是输出的内容 请注意,前提是你的命令是这样配置的
package.json命令配置

我是执行后输出的内容

console.log(process.env);   // BASE_URL: "/" NODE_ENV: "development"

补充:process对象时vue-cli的全局环境对象访问process.env即可获取环境参数 BASE_URL 就是项目的目录,NODE_ENV代表当前处于development模式,
默认就是以上的情况
当然vue-cli也为我们提供了自定义变量

1. “serve:dev”: “vue-cli-service serve --mode=dev”, 配置这个命令 --mode=dev 表示当前vue-cli会去读取.env.dev 文件中的变量,:dev是和其他命令作区分

在这里插入图片描述
2,配置.env.dev文件,文件内容如下VUE_APP_XXX是一个格式
在这里插入图片描述
3,执行npm run serve:dev
console.log(process.env); 就会输出以下内容
VUE_APP_BASE_URL就是我们定义的变量 当前依然是development模式

BASE_URL: "/" NODE_ENV: "development" VUE_APP_BASE_URL: "http://dev:8080"

2,接下来是test 模式,就是测试模式也就是说你运行 vue-cli-service test:unit 之后就进入了该模式

1,首先你要有这个命令才行,强烈建议你先执行

.\node_modules.bin\vue-cli-service help 查看以下自己有没有安装,以下表明,可以执行,如果没有,请看第二条
在这里插入图片描述

2,你的项目就没有这个命令就是这样了在这里插入图片描述

此时你要安装一些包才可以
在这里插入图片描述

3,此时你就有了这个命令 然后你可以进行如下配置

在这里插入图片描述

4,然后执行 npm run test,如下即为运行成功,可是什么也没有得到……

在这里插入图片描述

对,项目并没有运行,也没有打包,只是可以跑这个命令……
暂不知道有什么用,似乎是用来测试项目的性能的吧……反正也没报错不是

3,production 模式

vue-cli-service build 命令执行之后就会进入production 模式,也就是说会读取到 .env.production 文件中的变量
在这里插入图片描述
console.log(process.env) 结果如下

BASE_URL: '/' NODE_ENV: 'production', VUE_APP_BASE_URL: http://shengchan:8080, 

当然如果你这样配置了, 你执行 npm run serve:pro 输出结果通过同上,他仍然会读取.env.production文件中的变量。
在这里插入图片描述

最后附上官网链接,文档写的详细一些,虽然没有演示。

https://cli.vuejs.org/zh/guide/mode-and-env.html

猜你喜欢

转载自blog.csdn.net/qq_46634851/article/details/126181920