Передача значения * ngFor в функцию при создании addEventListener - PullRequest
0 голосов
/ 26 сентября 2018

Я создаю прослушиватель событий ниже, и я не знаю, как установить значение ngFor для this.pop для параметра.

ngAfterViewInit() {
this.elementRef.nativeElement.querySelector('.spells img')
                              .addEventListener('mouseover', this.pop.bind(this, event));
}

Это HTML-код

    <ul class= "list-unstyled row">
      <li *ngFor = "let z of data(m[m.length-1]) | slice: 0 : 10; index as j" class = "list-item col-6">
        <img class = "champ" src = {{z[0]}}/>
        <div class = "spells">
          <img src = {{z[1].spellurl}}/>
          <img src = {{z[2].spellurl}}/>
          <div class = "desc"></div>
        </div>
      </li>
    </ul>

Так что, когдаЯ наведите курсор мыши на эти изображения в div.spell, я хочу вызвать функцию, pop

    pop(event){
    //let ds = document.getElementsByClassName(".spells .desc");
    let pos = event.target.getBoundingClientRect();
    let newpos = "translate(" + pos.right + "px, " + pos.bottom + "px)";
    console.log(newpos);
    let selected = this.elementRef.nativeElement.querySelector('.spells .desc');
    selected.style.display = "block";
    selected.innerHTML = desc;
    selected.style.transform = newpos;
}

Функция будет определять положение div.desc и его содержимое.Я могу использовать «событие» для вычисления позиции, но проблема в том, что selected.innerHTML, что «z» в *ngFor = "let z of data(m[m.length-1]) имеет описание, которое я хочу использовать в качестве содержимого div, но я не знаю, как использовать это значение какпараметр функции в addEventListener.

Любое предложение ??спасибо

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...