一、问题描述
小程序部分页面使用H5(例如关于我们), 但需要传小程序版本号,通过url传参,但实际并未获取到;
多番百度后,发现原来是因为使用navigate跳转时,url是有长度限制的,uniapp文档里也有介绍;
所以需要使用 ·encodeURIComponent
和decodeURIComponent
进行编码和解密后才行;
二、解决办法
// 1. navigate跳转时,对参数进行编码
goto(){
let url = BASEURL + `/aboutUs.html?version=${this.version}`
let newurl = encodeURIComponent(url)
uni.navigateTo({
url:`/pages/webview?url=${newurl}`
})
}
//2.webview页面, 接收参数时进行解码即可
<web-view :src="url"></web-view>
onLoad(options){
this.url = decodeURIComponent(options.url)
},