呼和浩特網(wǎng)站建設(shè)哪家好百度官網(wǎng)認(rèn)證多少錢
最近自己在嘗試使用AIGC寫一個(gè)小程序,頁(yè)面、樣式、包括交互函數(shù)AIGC都能夠幫我完成(不過(guò)這里有一點(diǎn)問(wèn)題AIGC的上下文關(guān)聯(lián)性還是有限制,會(huì)經(jīng)常出現(xiàn)對(duì)于需求理解跑偏情況,需要不斷的重復(fù)強(qiáng)調(diào),并糾正錯(cuò)誤,才能得到你想要的內(nèi)容)。
因?yàn)樽罱承┰?#xff0c;所處的環(huán)境網(wǎng)絡(luò)沒(méi)辦法科學(xué)上網(wǎng),剩下的網(wǎng)絡(luò)交互需要自己完成。
多環(huán)境(版本)配置
我們都知道小程序開(kāi)發(fā)主要有三個(gè)版本:開(kāi)發(fā)版,體驗(yàn)版,正式版;我們?nèi)绾巫屓齻€(gè)環(huán)境訪問(wèn)的環(huán)境信息不同呢?這個(gè)就需要進(jìn)行多環(huán)境(版本)配置信息了。
1.多環(huán)境(版本)配置封裝
最近在網(wǎng)上看到了很多人做多版本封裝的時(shí)候,用到了這樣的配置:
env.config.js
const envConf = {// 開(kāi)發(fā)版-本地環(huán)境develop: {mode: 'dev',DEBUG: false,VCONSOLE: true,appid: 'appid',APP_BASE_URL: 'API地址',},// 體驗(yàn)版-測(cè)試環(huán)境trial: {mode: 'test',DEBUG: false,VCONSOLE: false,appid: 'appid',APP_BASE_URL: 'API地址',},// 正式版-正式環(huán)境release: {mode: 'prod',DEBUG: false,VCONSOLE: false,appid: 'appid',APP_BASE_URL: 'API地址',}
}
module.exports = {env: envConf[__wxConfig.envVersion]
}
2.配置需要注意的問(wèn)題
我看到這里對(duì)于__wxConfig這個(gè)對(duì)象有點(diǎn)不太了解,就習(xí)慣性的把配置改為:
env.config.js
const envConf = {// 開(kāi)發(fā)版-本地環(huán)境develop: {mode: 'dev',DEBUG: false,VCONSOLE: true,appid: 'appid',APP_BASE_URL: 'API地址',},// 體驗(yàn)版-測(cè)試環(huán)境test: {mode: 'test',DEBUG: false,VCONSOLE: false,appid: 'appid',APP_BASE_URL: 'API地址',},// 正式版-正式環(huán)境prod: {mode: 'prod',DEBUG: false,VCONSOLE: false,appid: 'appid',APP_BASE_URL: 'API地址',}
}
module.exports = {env: envConf[__wxConfig.envVersion]
}
通過(guò)下面的方式使用:
env.env.屬性名
在把小程序代碼發(fā)布到體驗(yàn)版的時(shí)候,我通過(guò)掃體驗(yàn)版的二維碼,發(fā)現(xiàn)微信小程序的頁(yè)面數(shù)據(jù)都沒(méi)有加載出來(lái),打開(kāi)調(diào)試模式,發(fā)現(xiàn)拋出了一下錯(cuò)誤:
Error during evaluating file "pages/***/***.js"
undefined is not an object (evaluating 't.default.env.APP_BASE_URL')
這才發(fā)現(xiàn),獲取APP_BASE_URL之前,env是undefined,這個(gè)時(shí)候感覺(jué)應(yīng)該是__wxConfig.envVersion的值在envConf字典中沒(méi)有,在微信小程序開(kāi)發(fā)社區(qū)搜索了__wxConfig.envVersion,發(fā)現(xiàn)了這篇文章,文章中說(shuō)明了__wxConfig.envVersion返回的值有哪些:
其中的envVersion為運(yùn)行環(huán)境,有以下幾個(gè)值
envVersion: ‘develop’, //開(kāi)發(fā)版
envVersion: ‘trial’, //體驗(yàn)版
envVersion: ‘release’, //正式版
其中的platform為運(yùn)行的平臺(tái)
有Android ios devtools 等
之前一直不知道微信小程序可以用__wxConfig.envVersion區(qū)分小程序體驗(yàn)版,開(kāi)發(fā)板,正式版
目前在官方文檔沒(méi)有查到相關(guān)資料,但是親測(cè)可用
envVersion 類型為字符串
envVersion: ‘develop’, //開(kāi)發(fā)版
envVersion: ‘trial’, //體驗(yàn)版
envVersion: ‘release’, //正式版
我把配置改了回去:
env.config.js
const envConf = {// 開(kāi)發(fā)版-本地環(huán)境develop: {mode: 'dev',DEBUG: false,VCONSOLE: true,appid: 'appid',APP_BASE_URL: 'API地址',},// 體驗(yàn)版-測(cè)試環(huán)境trial: {mode: 'test',DEBUG: false,VCONSOLE: false,appid: 'appid',APP_BASE_URL: 'API地址',},// 正式版-正式環(huán)境release: {mode: 'prod',DEBUG: false,VCONSOLE: false,appid: 'appid',APP_BASE_URL: 'API地址',}
}
module.exports = {env: envConf[__wxConfig.envVersion]
}
3.微信小程序官方提供獲取環(huán)境函數(shù)
我在想,__wxConfig.envVersion畢竟不是官方提供的,想看看官方是否提供獲取小程序環(huán)境的函數(shù),發(fā)現(xiàn)還真有:wx.getAccountInfoSync()
具體函數(shù)返回的內(nèi)容,大家可以到官方函數(shù)地址自己詳細(xì)閱讀。
修改配置:
env.config.js
const envConf = {// 開(kāi)發(fā)版-本地環(huán)境develop: {mode: 'dev',DEBUG: false,VCONSOLE: true,appid: '***',APP_BASE_URL: 'API地址',},// 體驗(yàn)版-測(cè)試環(huán)境trial: {mode: 'test',DEBUG: false,VCONSOLE: false,appid: '***',VUE_APP_BASE_URL: 'API地址',},// 正式版-正式環(huán)境release: {mode: 'prod',DEBUG: false,VCONSOLE: false,appid: '***',VUE_APP_BASE_URL: 'API地址',}
}
module.exports = {env: envConf[wx.getAccountInfoSync().miniProgram.envVersion]
}
OK,大功告成。