[问题简单描述]
在小程序启动时所有页面都被创建了,导致全部触发了created钩子。
在页面返回后,当前页面栈里已经没有这个页面了,但是没有触发destroyed钩子,导致data,wathers,事件监听都没有被清理,下次进来页面还是之前的数据。
我感觉这不是好的设计,应为很反直觉,不知道这么做是因为什么原因?
期望的表现:
比如我有首页A,显示某个id的详情页B:
小程序启动,进入首页A,应该只触发A页面的created,这时还没有进过B页面,不应该触发B的created;
进入页面B?id=1,触发created,拉取id为1的数据然后渲染,在页面返回时destroy这个页面组件,这样vue会清理data和watchers。下次进来页面B?id=2,就会重新初始化data,而不是还保留着上一次的data。
3条答案
按热度按时间hvvq6cgz1#
#634
#831
#140
#300
0ve6wy6x2#
issue超过30天无更新或响应,7天后将自动关闭,如果问题状态有更新请及时更新issue
yyyllmsg3#
同一页面的watch,进入后返回然后再进入,这是watch将不会执行。怎么解决