首页 > 解决方案 > addEventListener 到 HTMLDivElement 数组

问题描述

出于某种原因,该行:console.log(i + "What button did we click on"); 只产生“3What button ...”我认为这可能与我的胖箭头功能有关,但我不确定解决方案是否会受到极大的赞赏。:)

 private SetUpHotSpots() {
    console.log("Entered SetupHotSpots");
    for (var i = 0; i < this.HotSpotArray.length; i++){
        console.log("Entered Loop: " + i);
        this.HotSpotArray[i].addEventListener("click", (() => {
            console.log(i + "What button did we click on");
        }));
    }
}

标签: htmlangulartypescript

解决方案


使用let而不是var. let允许您创建仅限于块范围的变量。所以改变你的 for 循环如下。

for (let i = 0; i < this.HotSpotArray.length; i++){

推荐阅读