gpt4 book ai didi

angular - 如何创建对动态创建组件的引用?

转载 作者:太空狗 更新时间:2023-10-29 19:36:41 24 4
gpt4 key购买 nike

我在任何地方都找不到如何创建对我从数组动态创建的组件的引用?

HTML

<div *ngFor="let item of items">
<my-component [data]="item.data"></my-component>
</div>

我需要访问每个 <my-component> (将从数组动态创建)在 TypeScript 代码中

示例:

lengthitems数组是 2。那么在 TypeScript 代码中我需要这样的东西。

myComponent0 - 引用 1。<my-component>

myComponent1 - 引用 2。<my-component>

谢谢

最佳答案

使用ViewChildren

import { ViewChildren, QueryList, ... } from '@angular/core';

export class AppComponent {

@ViewChildren(MyComponent) components: QueryList<MyComponent>

...

ngAfterViewInit() {
this.components.forEach(componentInstance => console.log(componentInstance));
}

...

}

这里的MyComponent是组件类的导出名称。这通常是 QueryList 类型,因此您基本上可以将其视为一个数组并执行必要的操作。

这仅在组件的 AfterViewInit 钩子(Hook)之后可用。


这是一个 Sample StackBlitz供您引用。

关于angular - 如何创建对动态创建组件的引用?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/53500060/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com