vue-cli环境变量和模式

830 阅读1分钟

问题描述

  • 在项目开发的时候,接口的地址或其他一些变量会根据环境的不同,也会有所变化,而且可能会经常切换环境, 变量什么的也会改变

问题解决方法

  • 创建不同模式下的环境变量

具体步骤(以下只是个案例,实际开发中根据自己的需求来)

  1. 举例描述: 开发中分三个模式生产环境(production), 开发环境(development),本地环境(local)
  2. 在项目根目录下分别建立.env, .env.production, .env.development, .env.localserve 文件
    // .env 文件里写的是各个环境下使用一致的变量  
    // .env.production 文件里面写的是生产环境下的变量
    // .env.development 文件里面写的是开发环境下的变量
    // .env.localserve 文件里面写的是本地环境下的变量
    
  3. 修改package.json里面的scripts命令
    // npm run localserve 是本地环境运行
    // npm run serve 开发环境运行
    // npm run build 生产环境运行
    "scripts": {
      "localserve": "vue-cli-service serve --mode localserve",
      "serve": "vue-cli-service serve --mode development",
      "build": "vue-cli-service build --mode production"
    },
    
  4. 建立config.js(这个在src里面建立,一般路径是src/config/config.js)
    // 这里就可以不用判断当前环境,直接获取变量即可
    // VUE_APP_BASEURL,VUE_APP_BASEURL,VUE_APP_OSSDOMAIN变量都是在第2步创建的文件中定义的,这里直接获取即可获取到当前环境下的变量值
    const config = {
        baseUrl: process.env.VUE_APP_BASEURL,
        routerMode: process.env.VUE_APP_BASEURL,
        ossDomain: process.env.VUE_APP_OSSDOMAIN
    }
    
    export default config
    

5.设置成功后,重新启动即可。