Обратный вызов события внутри литерала шаблона - PullRequest
0 голосов
/ 11 декабря 2019

Привет всем. Я новичок в javascript и пытаюсь выполнить функцию обратного вызова для события click пользователя с использованием литералов шаблона. Однако обратный вызов выполняется при оценке шаблона.

Метод строки вызывается другим классом, который передает элемент и функцию обратного вызова.

class Clazz {
  row(item, deleteCallback){
      return `<a href="#" onClick="${deleteCallback(item.requestId)}"></a>`
  }
}

Кто-нибудь может мне помочь?

1 Ответ

2 голосов
/ 11 декабря 2019

Я думаю, что лучший подход к тому, что вы пытаетесь достичь, - это вернуть элемент из row вместо строки HTML. Например:

class Clazz {
  row(item, deleteCallback){
    const a  = document.createElement('a');
    a.href = '#';
    a.onclick = () => deleteCallback(item.requestId);
    return a;
  }
}

Это можно добавить в DOM, используя append, after или что-то подобное.

...