【发布时间】:2018-07-02 13:32:30
【问题描述】:
我有两个组件,组件 A 和组件 B。 在 componentA 中,我有一个 click 事件,它触发一个将用户对象作为参数传递的方法,然后使用事件总线发出该对象。当我成功收听 componentB 中的发射时,我已将发射的对象分配给一个变量,我 console.log 出它显示该对象的变量,但是当我再次 console.log 时 Event.$once 之外的变量对象消失了。 任何帮助,将不胜感激 :) 谢谢!
这是我的代码:
组件A
showUserStats(user) {
EventBus.$emit('userInfo', user);
this.$router.push({
name: 'componentB',
params: { id: user._id }
})
}
组件B
created() {
EventBus.$once('userInfo', (user) => {
this.userInfo = user
console.log('userInfo', this.userInfo);
});
console.log('userInfo outside EventBus', this.userInfo);
}
【问题讨论】: