为什莫vue中使用了keep-alive里面的activated会被触发两次?

为什莫vue中使用了keep-alive里面的activated会被触发两次?

1.在当前NewlyBuild页面下(即新建信息页面)有四个子组件,他们对应的步骤条的切换,步骤条每切换一次,就会触发各自对应的子组件,

image.png

现在有一个需求,(当前的NewlyBuild代表的是tabs栏上面的新建信息),点击其他tabs栏上面的标签,再重新切换NewlyBuild这个新建信息页面,数据不会丢失,于是我想到用keep-alive
image.png

然后我在router-view上面的做判断,在NewlyBuild的元信息(meta)中的加入了对当前页面是否需要做缓存进行了状态的判断

image.png

============================================================

image.png

结果在某一个子组件中在acvitated中的方法会被触发两次,而不是一次,这究竟什么原因造成的,请路过大佬指导一下吧

阅读 5.4k
1 个回答

建议使用keep-aliveinclude属性或include代替v-if的写法,有可能是这个原因导致的。

撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
推荐问题