Теряется this обработчика событий в классе
В консоли пишет null у обработчика события. Нечто похожее витает на стаке, но сделав все также контекст все равно теряется. Уже думаю просто отдельно через цикл написать функцию за границами класса, либо на крайняк повесить onchange селекту в innerHtml
class Selector {
constructor(parentSelector, id){
this.parentSelector = parentSelector;
this.itemResult = document.querySelector(`#itemresult_${id}`);
this.itemSelect = document.querySelector(`#itemselect_${id}`);
this.clickHandler = this.clickHandler.bind(this);
this.bindEvents();
}
bindEvents() {
this.itemResult.addEventListener('click', this.clickHandler)
}
clickHandler() {
this.itemResult.textContent = this.itemSelect.value * 25;
}
render() {
const ol = document.createElement('ol');
ol.innerHtml = `
<li>
<select name="itemselect_${this.id}" id="itemselect_${this.id}">
<option value="0">0</option>
<option value="1">1</option>
<option value="2">2</option>
<option value="3">3</option>
</select>
</li><li>+<span id="itemresult_${this.id}" class="itemresult">0</span>%</li>
`
this.parentSelector.append(ol);
}
}
Источник: Stack Overflow на русском