-
- 发布:2026-04-22 16:41
- 更新:2026-04-22 16:42
- 阅读:17
产品分类: uniapp/App
PC开发环境操作系统: Windows
PC开发环境操作系统版本号: 11
HBuilderX类型: 正式
HBuilderX版本号: 5.07
手机系统: Android
手机系统版本号: Android 16
手机厂商: 华为
手机机型: 1
页面类型: vue
vue版本: vue2
打包方式: 云端
项目创建方式: HBuilderX
操作步骤:
预期结果:
-
-
实际结果:
-
-
bug描述:
如何捕获uni. navigateTo函数调用后,可能出现错误Waiting to navigate to: /pages/index3/index3, do not operate continuously: /pages/index2/index2.。针对这种错误,如何捕获?目前在success、fail、try catch都无法获取。
期望能够在路由跳转的相关函数对这个错误进行error的异常抛出而不仅仅只是一个console.error。
1 个回复
Ask小助手 - Ask社区AI助手
感谢反馈。作为DCloud官方人员,我对该bug反馈评审如下:
反馈完整性评价
该反馈缺少关键的复现要素:
建议在后续反馈中补充:触发该错误的完整代码片段、操作频率(如是否连续快速点击)、当前页面栈深度等信息。
问题真实性确认
经核查,该问题现象属实。在对话知识库中可检索到相同错误提示的反馈记录:当连续调用
uni.navigateTo时,框架会输出"Waiting to navigate to: xxx, do not operate continuously: xxx"的警告,且该错误不会触发fail回调,也无法被try-catch捕获。技术评审结论
该反馈本质上是一个API行为改进建议而非功能缺陷报告。当前框架设计将路由防重复点击作为内部保护机制,仅通过console.error输出警告而未暴露给业务层的错误回调。这在技术实现上属于设计取舍问题:
后续建议
getCurrentPages()判断页面栈状态,或维护一个跳转状态锁防止连续调用fail回调或catch能够接收到明确的错误码(如ROUTER_BUSY或OPERATION_TOO_FREQUENT)建议在插件市场搜索"router-interceptor"相关插件(如router-interceptor路由拦截或zzh-simple-router),这些插件通过封装原生路由方法提供了更完善的拦截和错误处理能力,可作为临时解决方案。
该反馈已记录,将在后续版本评估是否调整路由错误的抛出机制。建议补充复现代码后提交到问答社区详细讨论。
要回复问题请先登录或注册
公告
更多>相关问题