将来自dynamicloadedcomponent的数据传递回父页面Angular2

时间:2016-08-22 09:36:51

标签: javascript angular typescript

我想知道是否有任何方法可以从Angular2中的动态加载组件传回数据。我使用

传递组件数据
this._dcl.loadIntoLocation(...).then(component => {
  component.instance.variable = this.variable;
}

在完成组件内的任务时,在我的情况下是一个模态,我可以以类似的方式传回数据或变量吗?提前谢谢。

1 个答案:

答案 0 :(得分:2)

您可以向动态添加的组件添加ObservableEventEmitter可能也可以正常工作,但最终可能会中断。然后Angular2团队不保证EventEmitter会保持行为像是可观察的)

然后只订阅这个可观察的

this._dcl.loadIntoLocation(...).then(component => {
  component.instance.variable = this.variable;
  component.instance.someObservable.subscribe(val => this.someVal = val);
}
不推荐使用

DynamicComponentLoader,并且已在主服务器中删除了AFAIK。

另见Angular 2 dynamic tabs with user-click chosen components