Vue中使用PubSub-js进行组件间通信时出现‘publish‘ of undefined异常解决办法

解决办法:如果发布消息的组件中使用的代码形如this.PubSub.publish(‘xxx’, test),就将其中的this.去掉,即直接使用PubSub.publish(‘xxx’, test)。

在vue中进行组件间通信时,发现控制台出现如下异常:

[Vue warn]:Error in callback for watcher "xxx": "TypeError: Cannot read property 'publish' of undefined"

经过网上反复查询,未找到有用信息,于是就尝试将this.PubSub.publish(‘xxx’, test)中的this.去掉,居然成功了。究其原因,尚不明确。
并且,经过实测发现,将组件中的导入语句import PubSub from 'pubsub-js’删除,也不影响pubsub-js功能。

猜你喜欢

转载自blog.csdn.net/shinyolive/article/details/113065927