navigateTo(params: Params): Promise<void> {
let url = params.url as any
let callApi = 'navigateTo' as keyof WechatJSSDK
if (params.page) {
if (LevelPageList.includes(params.page)) {
url = navigateUrl(params)
callApi = 'switchTab'
} else if (SearchStatusList.includes(params.page)) {
const waybillStatus = params.page.split('searchTab')[1]
this.call('postMessage', { data: { waybillStatus } }, true)
url = navigateUrl(params)
callApi = 'switchTab'
} else {
url = navigateUrl(params)
callApi = (params?.type || 'navigateTo') as keyof WechatJSSDK
}
}
const addParams = {} as any
if (params?.params?.url) {
addParams.url = params?.params?.url || ''
}
if (params?.params?.needLogin) {
addParams.needLogin = params?.params?.needLogin || 'false'
}
const webUrl = addUrlParams(url, addParams)
console.log('webUrl', webUrl)
return this.call(callApi, { url: webUrl }, true)
}
在pc企微中使用navigateTo方法失效,在个微移动端、pc端以及企微移动端都是正常跳转
版本:jweixin-1.6.2.js
