uniapp中我使用uni.navigateTo跳转webview页面传参,但是接收的参数只有一半。
例如newAccount=123456&newPassword=123456但是在跳转外部接参只能收到一半newAccount=123456
uniapp页面
webview跳转外部页面
uniapp中我使用uni.navigateTo跳转webview页面传参,但是接收的参数只有一半。
例如newAccount=123456&newPassword=123456但是在跳转外部接参只能收到一半newAccount=123456
uniapp页面
webview跳转外部页面
在uniapp中使用uni.navigateTo跳转webview页面传参时,可能会遇到接收的参数只有一半的情况。这可能是因为在跳转时,url的长度超过了小程序的限制。为了解决这个问题,可以使用encodeURIComponent和decodeURIComponent进行编码和解码。
具体的解决办法如下:
在跳转时,对参数进行编码,使用encodeURIComponent函数对url进行编码。
在webview页面接收参数时,使用decodeURIComponent函数对参数进行解码。
示例代码如下:
// 跳转页面时对参数进行编码
goto() {
let url = BASEURL + `/aboutUs.html?version=${this.version}`;
let newurl = encodeURIComponent(url);
uni.navigateTo({ url: `/pages/webview?url=${newurl}` });
}
// 在webview页面接收参数时进行解码
onLoad(options) {
this.url = decodeURIComponent(options.url);
}
通过以上的编码和解码操作,可以确保参数在跳转和接收过程中不会丢失。这样就可以解决接收的参数只有一半的问题了。