我在父组件内部有两个子组件app-search和app-list,如下所示:
<app-search-panel (searchedParam)="childEventClicked($event)"></app-search-panel>
<app-list-panel [event]="searchedParam"></app-list-panel>
在应用程序搜索中,我有一个表单,该表单在提交值时将其传递给第二个孩子。
childEventClicked(event: any){
console.log("dashboard", event);
this.searchedParam = event;
}
@Output() searchedParam = new EventEmitter();
onSubmit() {
this.searchedParam.emit(cityName);
}
@Input() event: any;
我无法在此组件上获得价值。
有人可以帮助我吗?我犯了什么错误。
谢谢你。
答案 0 :(得分:0)
@ Input,@ Output仅在组件为父代和子代的情况下才起作用,在您的情况下,两个子代均为同位,因此您不能在两个子代词之间直接进行插值
解决方案:
1>将数据传递给child1-> Parent ---> child2 2>使用主题或行为主题来传达两个组成部分。
您可以找到它作为第二种解决方法的参考