Ошибка типа: не удается прочитать свойство ‘ShowMessageBox’ неопределенного electron в узле js

#node.js #express #electron

#node.js #выразить #electron

Вопрос:

Приведенный ниже код предназначен только для отображения диалогового окна с использованием модуля узла electron.

app.js

     const { dialog } = require('electron')
    const response = dialog.showMessageBox(null);
    console.log(response);
 

Нужна помощь, чтобы понять, почему я получаю сообщение об ошибке ниже:

     const response = dialog.showMessageBox(null);
                            ^
    TypeError: Cannot read property 'showMessageBox' of undefined
        at Object.<anonymous> (C:Users1217688DesktopWebAppnode-elect-testapp.js:2:25)
        at Module._compile (module.js:660:30)
        at Object.Module._extensions..js (module.js:671:10)
        at Module.load (module.js:573:32)
        at tryModuleLoad (module.js:513:12)
        at Function.Module._load (module.js:505:3)
        at Function.Module.runMain (module.js:701:10)
        at startup (bootstrap_node.js:190:16)
        at bootstrap_node.js:662:3
 

Комментарии:

1. опубликуйте свой main.js файл?

2. app.js — это мой основной файл

3. у вас есть electron в вашем package.json, и вы запустили npm install ?

4. Да, я установил модуль electron npm

Ответ №1:

В процессе рендеринга добавьте .remote

 const { dialog } = require('electron').remote
 

Ответ №2:

Попробуйте вызвать диалоговый модуль, когда приложение будет готово:

 app.on('ready', () => {
  const { dialog } = require('electron')
  dialog.showMessageBox(null);
})