有没有办法动态设置#id,角度用来构造@ViewChild元素引用的HTML属性?
具体需要:我有以下模板,通过迭代*ngFor创建,我想在迭代上分配Angular id.
<ul>
<li *ngFor="let link of links">
</li>
</ul>
Run Code Online (Sandbox Code Playgroud)
在解释之后,最终得到如下结果:
<ul>
<li #link1>
</li>
<li #link2>
</li>
</ul>
Run Code Online (Sandbox Code Playgroud)
现在我知道了许多其他方法来获取元素,我可以将#分配给ul元素等,但是想知道是否有办法在ngFor上进行.
在看到答案并尝试组合后进行编辑:
似乎没有办法为*ngFor生成的单个元素分配不同的局部变量标识符.您可以获得所有这些,如接受的答案建议,或者只是获取父元素,并从那里找到您的方式.
Est*_*ask 18
尽管常规变量之间看似相似#
,但可以将多个元素分配给单个本地模板引用变量:
<ul>
<li *ngFor="let link of links" #linkRef></li>
</ul>
Run Code Online (Sandbox Code Playgroud)
可以通过以下方式获得:
@ViewChildren('linkRef') linkRefs;
Run Code Online (Sandbox Code Playgroud)