1
我的模板中包含的動態列表訪問元素:在NgFor循環
<ol>
<li #nameitem *ngFor="let name of names; let i = index" class="classA"
(click)="handleClick(i)">{{ name }}</li>
</ol>
我想更改項目的CSS類,當用戶點擊它。我試過使用MouseEvent
的屬性,如target
和currentTarget
,但EventTarget
不提供對類列表的訪問。所以我試圖獲得列表元素作爲查看兒童:
@ViewChildren("nameitem") private nameItems: QueryList<ElementRef>;
這也不起作用。在事件處理程序,本土元素是不確定的:
private handleClick(i: number) {
console.log(this.nameItems[i].nativeElement.classList.length);
}
我得到的錯誤是:Cannot read property "nativeElement" of undefined
。有什麼想法嗎?
由於
如果您在handleClick中傳遞'$ event',那麼您可以從$ event中獲取目標並更新該類。 – Siraj
當我第一次嘗試時,由於某種原因失敗。但我只是再次嘗試,它的工作。離奇。謝謝。 – user934904