uni-app官网关于环境变量的三种配置方法

方法1:vue.config.js
支持情况:
CLI 工程
HBuilderX 2.1.5 及以上版本
注意:仅vue页面生效

方法2:.env
支持情况:
CLI 工程

方法3:package.json
本文主要围绕package.json这个配置方法来展开。

首先在根目录下创建(若没有)package.json文件,并写入以下代码。
!切记复制以下代码需要去掉所有注释,在package.json中不能有任何注释,否则会报错。

{
    /**
     package.json其它原有配置 
     在复制代码时记得去掉注释
     */
    "uni-app": {// 扩展配置
        "scripts": {
            "custom-platform": { //自定义编译平台配置,可通过cli方式调用
                "title":"自定义扩展名称", // 在HBuilderX中会显示在 运行/发行 菜单中
                "BROWSER":"",  //运行到的目标浏览器,仅当UNI_PLATFORM为h5时有效
                "env": {//环境变量
                    "UNI_PLATFORM": "",  //基准平台
                    "MY_TEST": "", // ... 其他自定义环境变量
                    "ANY_PARMS": "",
                    "XXX": "YYY"
                 },
                "define": { //自定义条件编译
                    "CUSTOM-CONST": true //自定义条件编译常量,建议为大写
                }
            }
        }    
    }
}

env这个变量里面添加自定义的变量,在其他地方可以通过process.env.xxx取出来。
process.env.NODE_ENV不可以自定义,不可改写,改写无效。如果需要通过当前环境来决定变量则需要通过判断赋值或三目运算符赋值。

// 判断
if(process.env.NODE_ENV === 'development') {
	// 赋值 or 其他逻辑
} else if(process.env.NODE_ENV === 'prodution' {
	// 赋值 or 其他逻辑
} else {}

// 三目运算符
const url = process.env.ENV === 'development' ? 'localhost:xxx' : 'www.xxx.com'

最后HBuilder会根据package.json配置文件会出现我们自定义的环境来运行
在这里插入图片描述
新建或修改package.json这类配置文件后需要重新编译一次。

在运行处编译文件是development环境,在发布处编译文件是production,选择production环境编译出来的文件路径会有所改变,需要留意控制台输出的信息!

Logo

前往低代码交流专区

更多推荐