我在一个循环中有一个元素,我只想更改它的id以避免冲突。我做了一些搜索,但似乎找不到任何东西。
<div *ngFor="let location of job.tasks; let i = index">
<div id="index-{{i}}">
{{index}}
</div>
</div>
问题是当我在ngOnInit中调用时,document.getElementById('index-1')
它返回null,因为它尚未分配ID。
在属性内连接ngFor
index(i
)id
。
<div *ngFor="let location of job.tasks; let i = index">
<div id="index-{{i}}">
{{index}}
</div>
</div>
您应该查询您的DOMngFor
循环,您可以在ngAfterViewInit
生命周期事件中执行相同的操作
ngAfterViewInit(){
console.log(document.getElementById('1'));
}
更正确的方式做到这一点使用#template-variable
上的ngFor
模板,@ViewChildren
装饰,找出各自的DOM。
本文收集自互联网,转载请注明来源。
如有侵权,请联系 [email protected] 删除。
我来说两句