项目创建 多环境变量配置

Posted liyunlonggg

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了项目创建 多环境变量配置相关的知识,希望对你有一定的参考价值。

多环境变量配置

package.json 里的 scripts 配置 serve stage build,通过 --mode xxx 来执行不同环境

通过 npm run serve 启动本地 , 执行 development
通过 npm run stage 打包测试 , 执行 staging
通过 npm run build 打包正式 , 执行 production

"scripts": 
  "serve": "vue-cli-service serve --open",
  "stage": "vue-cli-service build --mode staging",
  "build": "vue-cli-service build",

配置介绍

以 VUE_APP_ 开头的变量,在代码中可以通过 process.env.VUE_APP_ 访问。
  比如,VUE_APP_ENV = 'development' 通过process.env.VUE_APP_ENV 访问。
  除了 VUE_APP_* 变量之外,在你的应用代码中始终可用的还有两个特殊的变量NODE_ENV 和BASE_URL
  在项目根目录中新建.env.*

.env.development 本地开发环境配置

NODE_ENV='development'
must start with VUE_APP_
VUE_APP_ENV = 'development'

.env.staging 测试环境配置

NODE_ENV='production'
 must start with VUE_APP_
VUE_APP_ENV = 'staging'

.env.production 正式环境配置

 NODE_ENV='production'
# must start with VUE_APP_
VUE_APP_ENV = 'production'
  • 这里我们并没有定义很多变量,只定义了基础的 VUE_APP_ENV development staging production
    变量我们统一在 src/config/env.*.js 里进行管理。

  • 这里有个问题,既然这里有了根据不同环境设置变量的文件,为什么还要去 config 下新建三个对应的文件呢?

  • 修改起来方便,不需要重启项目,符合开发习惯。

config / index.js

// 根据环境引入不同配置 process.env.NODE_ENV
const config = require('./env.' + process.env.VUE_APP_ENV)
module.exports = config

配置对应环境的变量,拿本地环境文件 env.development.js 举例,用户可以根据需求修改

// 本地环境配置
module.exports = 
  title: 'vue-admin-template',
  baseUrl: 'http://localhost:1001', // 项目地址
  baseApi: 'https://test.xxx.com/api', // 本地api请求地址
  APPID: 'xxx',
  APPSECRET: 'xxx'

根据环境不同,变量就会不同了

// 根据环境不同引入不同baseApi地址
import  baseApi  from '@/config'
console.log(baseApi)

以上是关于项目创建 多环境变量配置的主要内容,如果未能解决你的问题,请参考以下文章

create-react-app:多环境变量

vue、react项目设置多环境变量

uniapp 开发多端项目如何配置环境变量以及区分环境打包

uniapp 开发多端项目如何配置环境变量以及区分环境打包

关于pycharm社区版环境配置

vue 多环境变量