Я пытаюсь связать событие «oninput» элемента диапазона ввода с пользовательским методом, объявленным в соответствующем файле машинописных файлов.Пользовательский метод запускается только один раз в методе addEventListener?
Ниже приводится HTML элемент:
<input type="range" id='motivation-grade' value="3" min="1" max="5">
Это код прослушиватель событий, который я использую в методе ngOnInit моего angular2 компонента:
ngOnInit() {
this.elem = document.getElementById('motivation-grade');
this.elem.addEventListener("click", this.motivation(document.getElementById('motivation-grade').value));
}
Здесь мотивации (ул: строка) метод, я хочу показать некоторые ссылки на основе выбранного значения каждый раз, когда пользователь меняет его. Но метод мотивации() запускается только один раз при запуске, и после этого он, похоже, не попадает. Может ли кто-нибудь помочь мне понять, чего мне не хватает?
, кто звонит 'ngOnInit' – brk
ли' this.motivation' возвращение функция? Если нет, то это обман [Как передать параметр функции, используя в 'addEventListener'?] (Http://stackoverflow.com/q/12024483/4642212). – Xufox
@Xufox - это правильно. Вы также должны избегать прямого манипулирования DOM с угловым 2. – n00dl3