uni-app uni.navigateTo 在h5环境下有bug
uni-app uni.navigateTo 在h5环境下有bug
示例代码:
setTimeout(() => {
uni.navigateTo()
})
操作步骤:
在h5环境下创建一个页面,然后执行下方代码会报错,设置个按钮,绑定点击时间,触发下方的代码
setTimeout(() => {
uni.navigateTo()
})
但是加了delta=1就是正常的
预期结果:
能正常返回页面,不加delta=1也可以返回页面
实际结果:
现在不加delta=1不能返回
bug描述:
在h5环境下创建一个页面,然后执行下方代码会报错,但是加了delta=1就是正常的
setTimeout(() => {
uni.navigateTo()
})


更多关于uni-app uni.navigateTo 在h5环境下有bug的实战教程也可以访问 https://www.itying.com/category-93-b0.html
你截图的那个代码是你的业务代码还是uniapp的框架源码?
更多关于uni-app uni.navigateTo 在h5环境下有bug的实战教程也可以访问 https://www.itying.com/category-93-b0.html
框架源码
真正的业务代码只有 setTimeout(()=>{ uni.navigateTo() })
回复 3***@qq.com: 发个demo
在H5环境下,uni.navigateTo() 必须传入有效的参数对象,否则会触发错误。根据你的代码和截图,问题在于调用时未提供必要的配置参数。
原因分析:
uni.navigateTo() 方法在H5平台需要明确指定跳转目标。当参数为空或格式不正确时,框架无法处理跳转逻辑。你提到的添加 delta: 1 能正常工作,是因为它符合 uni.navigateBack() 的参数字段,但这里实际应该使用 uni.navigateBack({ delta: 1 }) 进行返回,而非 uni.navigateTo()。
正确用法:
- 若需跳转新页面,应使用:
uni.navigateTo({ url: '/pages/targetPage/targetPage' }); - 若需返回上一页,应使用:
uni.navigateBack({ delta: 1 });


