• vuecli3/4关于process.env的配置


    由于我们的项目需要在不同环境下进行运行(开发,生产,测试等),设置process.env这避免我们需要多次的去切换请求的地址以及相关的配置。

    默认的有development和production两种,分别对应运行运行vue-cli-service serve与vue-cli-service build两种环境。也就是说开发环境默认为development,打包之后的环境默认为production。同时也支持不同环境不同配置,在项目根目录中配置.env.development与.env.production两个文件(使用方法与.env一致),系统根据不同环境获取不同配置文件。达到不同环境不同配置的效果。
    然而实际开发中,我们不一定只有两个环境,所以vue-cli也提供了多环境的配置方法。在系统根目录中配置.env.[environmentName]文件,然后运行时候加上–mode environmentName就可以将配置文件切换到对应文件中去

     一 建立.env系列文件

    首先我们在根目录新建3个文件,分别为.env.development,.env.production,.env.test

    • env.development 模式用于serve,开发环境,就是开始环境的时候会引用这个文件里面的配置
    • .env.production模式用于build,线上环境
    • .env.test 测试环境

    二  修改.env系列文件

    .env.development

    VUE_APP_BASE_API = 'http://localhost:8091/api/'

    .env.production

    VUE_APP_BASE_API = 'http://jstudio.org/api/'

    .env.test

    VUE_APP_BASE_API = 'http://192.169.123:8092/api/'

    四 更改package.json文件 

      "scripts": {
        "dev": "vue-cli-service serve",
        "test": "vue-cli-service serve --mode test",
        "serve": "vue-cli-service serve",
        "build": "vue-cli-service build",
        "build:test": "vue-cli-service build --mode test",
        "lint": "vue-cli-service lint"
      }

    五 使用

    当需要用到该变量是可以用process.env.VUE_APP_BASE_API进行取值。

    例如在js文件中直接使用

    const service = axios.create({
        baseURL: process.env.VUE_APP_BASE_API,
        timeout: 10000,
    })

    1.Vue2.0页面写法

    在data中使用

    <template>
        <div>
            <a :href="this.uploadUrl">点击</a>
        </div>
    </template>
    
    <script>
    export default {
        data() {
            return {
                uploadUrl: process.env.VUE_APP_BASE_API,
            }
        }
    }
    </script>

    在computed() 中使用

    <template>
        <div>
            <a :href="VUE_APP_BASE_API">点击</a>
        </div>
    </template>
    
    <script>
    export default {
        computed: {
            VUE_APP_BASE_API(){
                return process.env.VUE_APP_BASE_API
            }
        }
    }
    </script>

    2. Vue3.0页面写法

    在setup()引用

    <template>
        <div>
            <a :href="uploadUrl">点击</a>
        </div>
    </template>
    
    <script>
    export default {
        setup() {
            return {
                uploadUrl: process.env.VUE_APP_BASE_API
            }
        }
    }
    </script>

    在computed()中使用

    <template>
        <div>
            <a :href="VUE_APP_BASE_API">点击</a>
        </div>
    </template>
    
    <script>
    import { computed } from 'vue'
    export default {
        setup() {
            const VUE_APP_BASE_API = computed(()=>{
                return process.env.VUE_APP_BASE_API
            })
            return {
                VUE_APP_BASE_API
            }
        }
    }
    </script>
  • 相关阅读:
    麻省理工公开课:线性代数 第4课 A的LU分解
    麻省理工公开课:线性代数 第3课 乘法和逆矩阵
    麻省理工公开课:线性代数 第2课 矩阵消元
    麻省理工公开课:线性代数 第1课 方程组的几何解释
    线性代数导论(一)向量介绍
    鸟哥的linux私房菜——第6章 Linux的文件权限与目录配置
    Python学习(七)数组读写和保存
    Python学习(六)向量化
    Python学习(五)Numpy通用函数汇总
    Python学习(四)数组和矩阵
  • 原文地址:https://www.cnblogs.com/zsg88/p/15585710.html
Copyright © 2020-2023  润新知