自定义指令和控制器之间的数据绑定

时间:2018-01-31 15:54:33

标签: angular angular-directive

我有自定义指令,它与外部库通信以收集数据。

该指令附加到组件的模板。它做了它应该做的事情。

集成到指令的外部库不断地向其发送数据。如何在指令和使用该指令的组件之间绑定数据?

我已经实现了控制器和模板之间的数据绑定。数据绑定在指令和组件之间是否以相同的方式发生?

1 个答案:

答案 0 :(得分:0)

这可以通过使用@Output角度装饰器来实现。

内部指示:

@Output('ap-data-change') apDataChange: EventEmitter = new EventEmitter() 

// or any function that updates data
onChange() {
  ... 
  this.apDataChange.next(someValue);
} 

主机组件中使用指令:

<div [ap-data]="[1,2,3,4,5]" (ap-data-change)=hostField=event$></div>

或者,可以将其传递给类似的函数:

<div [ap-data]="[1,2,3,4,5]" (ap-data-change)="_messageReceiver($event)"></div>