uni-app 区分环境

2,975 阅读1分钟

首先在 package.json中定义环境

{
    "uni-app": {
        "scripts": {
            "test": {
                "title": "h5测试环境",
                "env": {
                    "UNI_PLATFORM": "h5",
                    "APP_ENV": "H5-Test"
                }
            },
            "pro": {
                "title": "h5正式环境",
                "env": {
                    "UNI_PLATFORM": "h5",
                    "APP_ENV": "H5-Pro"
                }
            }
        }
    }
}

然后在根目录放置一个.env文件夹

/.env/index.js

let ENV_VAR = null

if (process.env.NODE_ENV === 'development') {  
  ENV_VAR = require('./.env.dev.js').default
} else {
  if (process.env.APP_ENV == "H5-Test") {
    ENV_VAR = require('./.env.dev.js').default
  } else if (process.env.APP_ENV == "H5-Pro") {
    ENV_VAR = require('./.env.prod.js').default
  }
}

if (ENV_VAR) {
  process.uniEnv = {}
  for (let key in ENV_VAR) {  
    process.uniEnv[key] = ENV_VAR[key]
  }  
}

/.env/.env.dev.js

export default {
  // config...
}

/.env/.env.prod.js

export default {
  // config...
}

最后在main.js中注入

import './.env'

使用

process.uniEnv.config