uniapp 自定义环境变量

468 阅读1分钟

uniapp 自定义环境变量

最近在用uniapp写微信小程序,在开发中,需要根据环境变量来获取不同的api的baseUrl地址,这里记录一下

uniapp默认环境变量

  • npm run dev:xx 将默认process.env.NODE_ENV=development
  • npm run build:xx 将默认process.env.NODE_ENV=production

uniapp自定义环境变量

packge.json里面定义自己的变量及脚本,参考uniapp自定义环境变量

// package.json
"uni-app": {
    "scripts": {
      "test": {
        "title": "微信测试环境",
        "env": {
          "UNI_PLATFORM": "mp-weixin"
        },
        "define": {
          "TEST_WEIXIN": true
        }
      }
    }
}

代码中运用

//js
let baseURL = '';

if (process.env.NODE_ENV === "development") {
  baseURL = "http://development.com"
} else if (process.env.NODE_ENV === "production") {
  baseURL = "http://production.com"
}

// #ifdef TEST_WEIXIN
baseURL = "http://test.com"
// #endif

console.log(baseURL)

修改package.json脚本运行

//package.json
"scripts": {
    "dev": "uni -p mp-weixin",
    "test": "uni -p test",
    "build": "uni build -p mp-weixin"
}
- npm run dev    baseURL = "http://development.com"
- npm run build  baseURL = "http://production.com"
- npm run test   baseURL = "http://test.com"
- npm run dev:custom test baseURL = "http://test.com"
- npm run build:custom test baseURL = "http://test.com"