EventEmitter事件通信(发布订阅)

原创 守候你的季节 随笔 JavaScript 120阅读 2019-01-10 16:08:09 举报

基于框架(angular,react,vue等)开发的项目都有合适的状态管理库,一般也很少使用eventEmitter,那么一些传统的或者遗留的基于 jQuery + template 的项目如何处理通信问题呢?

解决方案:

  1. 发布订阅(EventEmitter事件通信)
  2. callback(传递回调函数)

这里简要实现一下EventEmitter

可能有的小伙伴会迷惑,我在不同的模板文件中分别导入了这个类,那不是分别有一个EventEmitter的实例吗?不同的实例之间没法通信啊!

其实是这样的:
多次重复执行同一句import语句,那么只会执行一次,而不会执行多次。
比如:

上面代码加载了两次lodash,但是只会执行一次。

也就是,不同模板之间不过只是共享同一个EventEmitter实例,所以能通信

评论 ( 0 )
最新评论
暂无评论

赶紧努力消灭 0 回复