我的应用程序有一个父组件和两个兄弟组件。
<feed>
<status></status>
<post></post>
</feed>
我想要实现的是当我在状态组件中写入基本上是文本字段并提交时,我应该将该数据传递到post组件并调用post组件中的另一个函数来更新其视图。但我不知道如何实现这一目标。任何帮助将不胜感激。
答案 0 :(得分:2)
您需要实现一个服务并拥有一个事件发射器,您可以将该服务注入两个组件并从status
组件发出并在post
组件
common.service.ts:
@Output() public somethingChanged: EventEmitter<any> = new EventEmitter();
status.component.ts:
someFunc() {
this.commonService.somethingChanged.emit({
data: "Dummy Data For Post Component"
})
}
post.component.ts:
constructor(
public commonService: CommonService
) {
this.commonService.somethingChanged.subscribe((data: any) => {
console.log("Data from status component", data);
})
}
现在,只要调用状态组件中的someFunc
,就会执行post组件中的监听器。您需要确保两个组件共享同一个CommonService
实例,即status
和post
组件都属于同一个NgModule
,如果它们不是CommonService
您需要使用共享模块forRoot
创建spring-test-dbunit
的单例。