fix(util): 修复小程序跳转时未拼接参数的问题
修复uni.navigateToMiniProgram调用时未将page_params参数拼接进跳转path的问题,正确处理了参数过滤和url拼接逻辑
This commit is contained in:
@@ -1349,9 +1349,22 @@ export default {
|
||||
|
||||
} else if (link.appid) {
|
||||
// 跳转其他小程序
|
||||
// page_params 转 query string,拼到 path 后面(resolveLinkUrl 已把 wap_url 中的 query 合并到 page_params)
|
||||
let path = link.page || '';
|
||||
const pageParams = (link.page_params && typeof link.page_params === 'object') ? link.page_params : {};
|
||||
const paramKeys = Object.keys(pageParams);
|
||||
if (paramKeys.length > 0) {
|
||||
const qs = paramKeys
|
||||
.filter(k => pageParams[k] !== undefined && pageParams[k] !== null && pageParams[k] !== '')
|
||||
.map(k => `${k}=${pageParams[k]}`)
|
||||
.join('&');
|
||||
if (qs) {
|
||||
path += (path.indexOf('?') !== -1 ? '&' : '?') + qs;
|
||||
}
|
||||
}
|
||||
uni.navigateToMiniProgram({
|
||||
appId: link.appid,
|
||||
path: link.page
|
||||
path
|
||||
})
|
||||
|
||||
} else if (link.name == 'MOBILE' && !link.wap_url) {
|
||||
|
||||
Reference in New Issue
Block a user