首页 > 解决方案 > Angular:如何在来自另一个组件的递归组件的所有子组件中运行一个函数?

问题描述

我通常通过服务在组件之间进行通信。我在服务中创建一个变量,并在创建组件时将其自身绑定到服务中的变量。然后我可以通过该服务调用其他组件中该组件的所有内容。问题是这不适用于递归组件,因为创建的最后一个子组件将自己绑定到变量,并且只会调用来自该子组件的函数。

Stackblitz 示例

标签: angular

解决方案


加载组件时,您可以使用 rxjs observable 来触发服务中的触发功能

 private deviceName = new BehaviorSubject([]);
 device = this.devicesSource.asObservable();

在组件中,您可以订阅 observable

this.myService.devicesSource.subscribe(ele=>{
   // Write your Code here
});

推荐阅读