addEventListener () не работает, и я не получаю ошибки - PullRequest
1 голос
/ 24 апреля 2020

Я работаю над приложением Electron. Слушатель событий не работает, и я не получаю никакой ошибки. Функция находится в процессе рендеринга, и NodeIntegration включен. Я не знаю, что делать.

<script src="event.js"></script>
 <header>
  <button type="button" class="quit-button">Quit</button>
 </header>
const remote = require('electron');
qbutton = document.getElementsByClassName('quit-button');

for (var i = 0; i < qbutton.length; i++) {
  qbutton[i].addEventListener('click', function () {
    console.log('quit');
    remote.app.quit();
  });
}

Спасибо

Редактировать: Спасибо, но проблема решена. Проблема была в html. <script> был до <button>.

Ответы [ 3 ]

0 голосов
/ 24 апреля 2020

Неправильно выполнен способ импорта и закрытия приложения. Вы должны сделать это следующим образом:

const remote = require('electron').remote
let qbutton = document.getElementsByClassName('quit-button');

for (var i = 0; i < qbutton.length; i++) {
     qbutton[i].addEventListener('click', function () {
          console.log('quit');
          remote.getCurrentWindow().close()
     });
}
0 голосов
/ 24 апреля 2020

Если у вас есть только одна кнопка, то:

const remote = require('electron');
qbutton = document.getElementsByClassName('quit-button')[0];

qbutton.addEventListener('click', function() {
  console.log('quit');
  remote.app.quit();
});

Вам не нужна итерация.

0 голосов
/ 24 апреля 2020

Попробуйте переместить тег <button> в тег <body>.

Тег кнопки не разрешен в голове. Когда я переместил кнопку на корпус, она отлично заработала.

...