用__wxConfig.envVersion区分小程序体验版,开发板,正式版
发布于 5 年前 作者 mdeng 4858 次浏览 来自 分享

在开发过程中,通常测试版和正式版的api的根路径不同,需要在发布时手动去更改路径,这就显得很繁琐,然后官方也没有给出相应的判断环境的api,其实小程序是预设了这个api的,只是不知道为什么没有公布出来,这个api就是 __wxConfig

关键点 — __wxConfig
在控制台中打印__wxConfig可以得到一下数据

其中的envVersion为运行环境,有以下几个值
envVersion: ‘develop’, //开发版

envVersion: ‘trial’, //体验版

envVersion: ‘release’, //正式版

其中的platform为运行的平台
有Android ios devtools 等

之前一直不知道微信小程序可以用__wxConfig.envVersion区分小程序体验版,开发板,正式版

目前在官方文档没有查到相关资料,但是亲测可用


envVersion 类型为字符串

envVersion: 'develop',    //开发版

envVersion: 'trial',          //体验版

envVersion: 'release',     //正式版

具体代码可参考如下截图


20191120
其实在我们的开发过程中是不需要这个变量的,因为我们开发版、体验版、和生产版是三个不同的小程序,所以不需要根据环境变量来区分


20191121摘自社区帖子

const env = typeof __wxConfig !== "undefined" ? __wxConfig.envVersion || "release" : "release";

const isProd = env === "release";

const protocol = isProd ? "https://" : "http://";

const baseApi = {

  develop: "testapi.com",

  trial: 'readyapi.com',

  release: "api.com"

};

export const api = protocol + baseApi[env];
4 回复

大佬真是才思敏捷

Linux下还不行,应该是版本跟不上

感谢,一直在找不同环境切换api的方法

回到顶部