请稍等 ...
×

采纳答案成功!

向帮助你的同学说点啥吧!感谢那些助人为乐的人

事件总线4?

老师,请教一个问题,原贴到此,
https://coding.imooc.com/learn/questiondetail/210534.html

这个就看个人理解了,我指的是本来两个控件在代码层面上没什么关联,所以用事件总线。

我明白你说的播放器和登录组件在代码层面上没什么关联,但是我不能理解为什么是拿播放器和登录组件来做比较,而不是拿detail.vue和登录组件来做比较,

这样说吧,如果说
detail.vue和登录组件在代码层面上没什么关联,所以用事件总线,因此在detail.vue中新增这一行代码

_this.$event.$emit("openLoginModal", "111");

这个逻辑我能够理解,
但是,如果说,
modal-player.vue和登录组件在代码层面上没什么关联,所以用事件总线,因此在detail.vue中新增这一行代码

_this.$event.$emit("openLoginModal", "111");

这个逻辑我就不能够理解,
因为点击播放小节视频时,判断用户是否需要登录,是否要直接弹出登录窗口,都是detail.vue中要做的事情,整个处理过程跟modal-player.vue没有半点关系,为什么用不用事件总线会牵扯到modal-player.vue呢?

同时,我看到git上新增事件总线的提交,也是只修改到了login.vue, main.js, detail.vue, 代码层面也没涉及到 modal-player.vue.

退一万步来说,如果 deatil.vue中的 modal-player 没做成组件,而是直接在detail.vue中使用的话,这个时候你也是推荐使用事件总线吧,这个时候使用事件总线的根据是什么呢? 这时是看登录组件login.vue跟哪个 xxx.vue在代码层面没什么关联呢?这些我都想不通。
麻烦老师一一回答,谢谢老师解答!!!

,
,

正在回答

插入代码

1回答

对的,跟播放组件没关系。

应该说detail.vue和login.vue没有代码层面关联,它们没有父子组件关系,所以用事件总线来触发登录。

0 回复 有任何疑惑可以回复我~
  • 提问者 慕神4535282 #1
    非常感谢!
    回复 有任何疑惑可以回复我~ 2020-11-06 10:42:43

相似问题

登录后可查看更多问答,登录/注册

问题已解决,确定采纳
还有疑问,暂不采纳
微信客服

购课补贴
联系客服咨询优惠详情

帮助反馈 APP下载

慕课网APP
您的移动学习伙伴

公众号

扫描二维码
关注慕课网微信公众号