秋云
秋云
  • 发布:2019-02-14 13:51
  • 更新:2019-09-24 12:02
  • 阅读:4317

uni.navigateBack()返回至首页报错[system] Not Found:Page[7]

分类:uni-app

请问各位大侠,H5端如果禁用自动生成的模拟导航条,自己模拟一个导航条,通过uni.navigateBack()方法返回(到主页面时),偶尔会报[system] Not Found:Page[7],这样的错误。实际页面已经返回,这个问题如何解决?
如果用官方原生导航返回则无此报错。(不想通过uni.switchTab切换到tab页面,因为用此方法切换完,原来页面滚动条高度无法保存)
多谢回答

以下是报错信息:
[system] Not Found:Page[7]
(anonymous) @ index.umd.min.js:1
(anonymous) @ index.umd.min.js:1
Vue.$emit @ vue.runtime.esm.js:2589
C @ index.umd.min.js:1
i @ index.umd.min.js:1
d @ index.umd.min.js:1
requestAnimationFrame (async)
(anonymous) @ index.umd.min.js:1
scroll (async)
scrollToPosition @ vue-router.esm.js:1666
(anonymous) @ vue-router.esm.js:1596
(anonymous) @ vue.runtime.esm.js:1888
flushCallbacks @ vue.runtime.esm.js:1809
Promise.then (async)
microTimerFunc @ vue.runtime.esm.js:1857
nextTick @ vue.runtime.esm.js:1901
queueWatcher @ vue.runtime.esm.js:3123
update @ vue.runtime.esm.js:3286
notify @ vue.runtime.esm.js:705
mutator @ vue.runtime.esm.js:853
a @ index.umd.min.js:1
u @ index.umd.min.js:1
(anonymous) @ index.umd.min.js:1
iterator @ vue-router.esm.js:1974
step @ vue-router.esm.js:1741
step @ vue-router.esm.js:1745
runQueue @ vue-router.esm.js:1749
confirmTransition @ vue-router.esm.js:2003
transitionTo @ vue-router.esm.js:1898
(anonymous) @ vue-router.esm.js:2210

2019-02-14 13:51 分享
已邀请:

最佳回复

DCloud_UNI_GSQ

DCloud_UNI_GSQ

HBuilderX 2.3.3 已修复
其他版本临时处理方案:无需处理,忽略报错即可,不影响其他逻辑

OnlyFree何

OnlyFree何

我也遇到类似问题。我这里监听了onReachBottom的页面返回上页很容易出现[system] Not Found

  • 799909172@qq.com

    你好,我也遇到了同样的问题,请问是怎么解决的啊

    2019-08-26 19:20

191649187@qq.com

191649187@qq.com

navigateBack() 其实和 navigateTo() 一样 ,不能跳到在 tabBar 里的地址. 需要用switchTab()来跳转。先判断有没有上一页,如果没有上一页,就指定一个默认地址跳转。如果有上一页,就判断上一页是不是在tabBar。如果在,就用 switchTab()跳转。其他情况就可以直接用navigateBack() 了。

  • 秋云 (作者)

    应该是这个问题导致,感谢!

    2019-09-14 13:24

井

我也遇到了同样的问题。

报错[system] Not Found:Page[20]

324834500@qq.com

324834500@qq.com - 智周万物,祥云瑞气

我也遇到了,一会Not Found:Page[6] 一会Not Found:Page[7]

        onLoad:function(){  
            // #ifdef H5 || APP-PLUS  
            let _this = this;  

            let ua = navigator.userAgent.toLowerCase();  
            if(ua.match(/MicroMessenger/i) == "micromessenger") {  
                uni.reLaunch({  
                    url: '/pages/login/h5_login/h5_login'  
                })  
            }else{  
                uni.reLaunch({  
                    url: '/pages/login/account_login/account_login'  
                })  
            }  
            // #endif  
        }
  • lihao313@foxmail.com

    我觉得是这几个路由跳转方法的问题,uni.reLaunch关闭所有页面,打开到应用内的某个页面,所以返回的时候应该找不到上个页面栈导致报错,但是uni.navigateTo也报错劳资就一脸懵逼了,个人猜想,不知道咋解决,坐等大佬~

    2019-05-14 10:17

834479662@qq.com

834479662@qq.com - meiyoushnemkeyijieshoade

从登录页进入到首页,然后返回登录就会报错,可以加个启动页,把登录页放到第二个就行了

lililihey@163.com

lililihey@163.com

同求解决办法 都找不到原因

阿条

阿条 - 一个孤独的码农

遇到相同报错,但是不是自定义导航造成。是onPageScroll监听事件造成。
已提问:
https://ask.dcloud.net.cn/question/78955

关注问题,希望能得到解决

raymonster@qq.com

raymonster@qq.com

我这边是打开一个带web-view的vue页面会报错 [system] Not Found:Page[3] ,停留在这个页面40分钟之后APP闪退,不知道有没有关系

  • 秋云 (作者)

    40分钟?强!

    2019-09-24 13:11

  • raymonster@qq.com

    回复 秋云: 我是不是表达产生歧义了。。。意思是手机打开APP的一个横屏页面然后放在一边不管,APP会在大约40分钟之后闪退

    2019-09-24 17:30

  • 秋云 (作者)

    回复 raymonster@qq.com: 那也挺厉害里,等40分钟,哈哈

    2019-09-25 12:53

要回复问题请先登录注册