我試圖在類實例中設置HTMLElement成員的onclick事件處理程序,但這兩個嘗試都存在問題:將類中的HTMLElement成員的onclick屬性設置爲同一類的方法
1:關鍵字此不能用於
class ClassName {
div: HTMLElement;
constructor() {
this.div = document.createElement('div');
this.div.onclick = function(e) {
this._onclick(); // keyword 'this' is not the instance in this scope
}
}
_onclick() {
alert('I've been clicked!');
}
}
2:錯誤:無法將 '空隙' 至(EV:FocusEvent)方法。=>任何'
class ClassName {
div: HTMLElement;
constructor() {
this.div = document.createElement('div');
this.div.onclick = this._onclick(); // error
}
_onclick() {
alert('I've been clicked!');
}
}
我認爲這表明我對語言的理解不夠。如果有人可以請澄清,並可能發佈解決方案,將不勝感激!
你的第二個例子也許應該''this.div.onclick = this._onclick;''(沒有括號)。 –