我有一个父组件和多个子组件。
height: -moz-calc(100vh -46px );
为了在亲子之间进行交流,我可以使用事件装饰器<parent>
<child1></child1>
<child2></child2>
...
</parent>
。另外,我可以像下面那样使用多个(@Input/@Output)
来访问子属性和方法。 (不考虑服务和可观察对象)
@ViewChild
我不想使用事件装饰器以及多个@ViewChild来存储每个子组件的引用。
在角度上是否有类似于@ViewChild的方式,我可以在一个变量中获取所有子对象的引用,并且可以迭代到该变量以访问每个子对象的属性和方法?
感谢您的帮助!
答案 0 :(得分:0)
如果您的意思是子代是相同的组件,则不是,例如,您确实有多个组件实例,例如:
<some-container>
<app-child></app-child>
<app-child></app-child>
<app-child></app-child>
</some-container>
然后您可以通过@ViewChildren装饰器将它们全部获取,如下所示:
@ViewChildren(AppChildComponent) public QueryList<AppChildComponent>;
您可以使用QueryList中存在的'forEach'方法进行迭代。