手机版

谈angular2子组件的事件传输(任意组件的事件传输)

时间:2021-08-29 来源:互联网 编辑:宝哥软件园 浏览:

angular2子组件的事件交付

Angular2由很多组件组成,画面由多条路线路由,使得事件的传递显得笨拙。这个小组的技术负责人发现了这种通过任何组件传递事件的方法,并教我做一个笔记。

项目状态:

画面结构复杂,路线多,组件多,嵌套复杂。业务需求:点击任何一个人的名字,直接打开和这个人的聊天界面

以往angular2官网给出的烹饪技巧基本解决了90%的需求。当然,如果使用输入和输出,结构会很混乱。

附件:angluar2的组件通讯门户(anglar2的官网不太支持Safari,热爱生活,请用chrome)

实现

service:

这是关键点,相当于一个事件队列。注入到该服务中的所有组件都可以启动事件并将它们插入队列。订阅此事件队列的所有组件都将接收广播。(暂且用广播这个词)

public event bus : eventemiterny=new eventemiterny();聊天组件:

构造函数(private _ workservice : workservice){//订阅此聊天事件。_ workservice . eventbus . subscribe(_ event={ if(_ event _ event . name=' chart '){//订阅此事件的所有组件都将被event bus上的事件触发,这相当于广播。//所以在事件传递的参数中加入一个name变量,来判断这个事件是否适合我。//.//就写在这里,通过_event//..................

this . workservice . event bus . emit({ type :3,voipaccount : userid });//注意emit()的参数是json结构。简单指示

angular2子组件事件传递

以上关于angular2子组件的事件传输(任意组件的事件传输)的讨论,都是边肖分享给大家的内容,希望能给大家一个参考和支持。

版权声明:谈angular2子组件的事件传输(任意组件的事件传输)是由宝哥软件园云端程序自动收集整理而来。如果本文侵犯了你的权益,请联系本站底部QQ或者邮箱删除。