这两天本来是想在自己的项目里的tarbar里面加一个页面的,然后页面引用了一个vant的tabs组件,但是就发现一个bug,就是每次我点击了这个页面之后,如果后续进行了relaunch跳转的话,就一定会报一个错,如同所示。
可奇怪的地方就是,我的项目里面根本没有用到过这个变量,实在是不知道到底是哪里出了问题,加之能力有限,源码看不懂,但最后也是秃然发现这个错只有每次点击了那个tarbar页面之后,执行了relaunch跳转之后才会报错。
relaunch跳转,所实现的是关闭所有页面,然后跳转到指定页面,可以跳转到tarbar页面;那问题就很明朗了,也就是我每次点击了tarbar这个页面,其实执行的应该是navigato方式,也就收保留了当前页,但是我只要后续执行了relaunch,就会强制关闭那个tarbar页面,然后错误信息里面的这个变量应该就直接被异常关闭,也就报了未定义的错误(自己的理解是这样,毕竟源码看不懂。。还望有大神能够为小弟指点一下迷津)
修改:
很简单,直接把relaunch换成另一种方式,比如switchTab即可,所实现的是关闭所有非tarbar页面,然后进行跳转页面,这样修改之后,就也没再报错了。
虽然bug是改了,没报错了,但是我自己仍然不大理解这个变量的意义,还有为什么会这样报错,还是希望有大神看到这篇文章之后,能为小弟我指点一下迷津。毕竟我在没有真正发现问题之前,一直以为是npm构建异常的问题。。同时如果有人也遇到这样的问题的话,就看一下自己的项目里面是不是有这方面的逻辑问题吧
vanpagescroller的bug小计
最新推荐文章于 2022-07-20 14:59:03 发布