class Controller {
constructor(names){
this.names = names;
}
sayhello(name){
console.log("Hello " + name);
}
makeLink() {
this.names.forEach(function(name){
var link = document.createElement('li');
link.innerHTML = name;
var container = document.getElementById('container');
container.appendChild(link);
link.addEventListener('click', (event) => {
sayhello(event.target.innerText);
});
});
}
}
这是我要在实际代码中尝试执行的示例。我想在单击“ li”时触发类方法“ sayhello”,以便打印出与“ li”相对应的名称。但是,它似乎不起作用。我尝试寻找解决方案,但仍然找不到运气。有谁知道我该怎么做?
答案 0 :(得分:2)
sayhello
在makeLink
的范围内不存在,但是在它的上下文中(也称为this
),因此您必须注意不要通过forEach {{1 }},那么您可以轻松访问它:
function