vue 兄弟组件之间传递参数,a组件调用父组件之后执行多次

发布于 2022-09-11 22:03:30 字数 757 浏览 15 评论 0

1-a组件执行完毕后调用b组件的方法并传递参数,我使用的是事件总线evenbus
这是a组件的触发函数

beforeDestroy () {

vueEvent.$emit('openTournament', 'tournaments')

},

2- b组件接受a的调用之后执行,但是由于b组件里面的是很多tab切页,导致每次切换到当前页的时候,a组件触发的函数又重新执行一遍
这是b组件的接受函数

mounted () {

vueEvent.$on('openTournament', res => {
  this.currentView = res;
  this.isselect = res
})

},

beforeDestroy () {

vueEvent.$off('openTournament', this.myhandle)

},

但是有个问题,虽然b组件正常的触发并接受了a传递的参数

图片描述

点击确定之后,在切换到别的tab页面(比如比分页面),在从比分页面切换到赛事页面的时候那个弹框又出现了(效果是点击确定就不在出现图片描述

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(2

风吹短裙飘 2022-09-18 22:03:30

你可以加个变量, 点击确定之前, 变量是true,点击确定之后,变量是false, 弹框的显示 把这个变量加上去

我偏爱纯白色 2022-09-18 22:03:30

vuex里弄个状态来确认需不需要弹窗,每次弹窗前判断就是了。

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文