HarmonyOS 鸿蒙Next中H5网页链接参数带有#无法正常跳转

HarmonyOS 鸿蒙Next中H5网页链接参数带有#无法正常跳转 链接参数from=/h5/#/index,使用window.location无法正常跳转,encodeURIComponent(’/h5/#/index’)依旧无法跳转

4 回复

编码成 base64?

const base64Param = btoa(encodeURIComponent('/h5/#/index'));
window.location.href = `https://example.com/target?from=${base64Param}`;

更多关于HarmonyOS 鸿蒙Next中H5网页链接参数带有#无法正常跳转的实战系列教程也可以访问 https://www.itying.com/category-93-b0.html


我还得根据参数回跳回来,那其他业务也需要一起改动了,

鸿蒙Next中H5网页链接参数带#无法跳转是由于系统WebView组件对URL片段标识符的处理机制导致。鸿蒙Next使用了新的Web引擎,可能未完全兼容传统浏览器对#参数的解析方式。需检查WebView的loadUrl方法是否对特殊字符进行了编码处理,或尝试使用encodeURIComponent对参数进行编码后传递。

在HarmonyOS Next中,H5网页链接参数包含#时无法正常跳转,通常是因为#在URL中被识别为片段标识符,导致参数解析异常。建议使用encodeURIComponent对参数进行编码,但需注意编码后的#会变为%23,部分场景下可能仍需后端或路由配置配合处理。可检查是否因鸿蒙的Web组件对特殊字符处理逻辑存在差异,或尝试使用history.pushState进行路由跳转。

回到顶部