Справочная информация:
Я использую ElectronJS для создания игры, и у меня есть класс для магазина, который я назвал Магазин.У него есть метод, который я называю «createItemElement», который берет объект с именем «item» и создает элемент li для последующего добавления к элементу ul.Код для этого можно найти ниже.
class Shop {
// ...
createItemElement(item) {
// Item Container
const li = document.createElement("li");
// Title
const title = document.createElement("h3");
title.textContent = item.title;
// Info
const info = document.createElement("p");
info.textContent = `Type: ${item.type}`;
// Add to Cart
const addButton = document.createElement("button");
addButton.textContent = "Add to Cart";
addButton.onclick = () => console.log("Adding to cart!");
li.appendChild(title);
li.appendChild(info);
li.appendChild(addButton);
return li;
}
// ...
}
Проблема:
Интересно, что весь HTML-код корректно отображается и все выглядит так, как должно, но «onclick»Событие просто не работает.Поскольку все эти элементы фактически визуализируются, можно с уверенностью предположить, что код действительно выполняется в процессе визуализации.Однако по какой-то причине событие не переносится в приложение.Когда я нажимаю кнопку в приложении, ничего не происходит.Я проверил devTools и посмотрел на элементы в отдельности.Как и ожидалось, все элементы были правильно перечислены в инспекторе элементов, но когда я проверил эту кнопку «addButton», свойства onclick не было видно.Кроме того, нет никаких ошибок в консоли, так что это хорошо (сарказм).И я знаю, что в StackOverflow задается много, казалось бы, похожих вопросов, но ни один из найденных ответов не помог и не применился к моей ситуации.Это крайне сбивает с толку, почему элементы визуализируются идеально, но слушатель событий не работает.
Полный проект можно найти здесь , а файл, приведенный ниже, можно найти здесь .