【问题标题】:Electron: Cannot find module 'electron-prebuilt'电子:找不到模块“电子预建”
【发布时间】:2017-07-24 23:30:11
【问题描述】:

我有一个 Electron 应用程序,当单击其中一个按钮时,它会使用 Nightmare.js。它在打包之前运行良好,但在我使用电子打包器将其编译为 .exe 文件后,它将按预期运行,直到我单击使用 Nightmare.js 的按钮。我收到此错误:

Uncaught Error: Cannot find module 'electron-prebuilt'
    at Module._resolveFilename (module.js:470)
    at Function.Module._resolveFilename (C:\app-directory\app-name-win32-ia32\resources\electron.asar\common\reset-search-paths.js:35)
    at Function.Module._load (module.js:418)
    at Module.require (module.js:498)
    at require (internal/module.js:20)
    at Object.<anonymous> (C:\app-directory\app-name-win32-ia32\resources\app\node_modules\nightmare\lib\nightmare.js:16)
    at Object.<anonymous> (C:\app-directory\app-name-win32-ia32\resources\app\node_modules\nightmare\lib\nightmare.js:528)
    at Module._compile (module.js:571)
    at Object.Module._extensions..js (module.js:580)
    at Module.load (module.js:488)

【问题讨论】:

  • 发布电子 package.json 或者如果您使用自定义构建脚本会很有用

标签: javascript node.js electron nightmare


【解决方案1】:

确保 electron-prebuilt 已添加到您的 package.json 中的 development dependency 中。您可以通过npm install --save-dev electron-prebuilt安装模块

在 Electron 中要求 app 模块的正确方法是:

const {app} = require('electron')

希望对您有所帮助。

【讨论】:

  • 对不起,忘了说。我已经尝试了这两种方法,似乎都没有解决问题。
  • 这很奇怪,因为电子预建似乎是电子的旧名称,但我使用的不是那么旧的版本。您还有其他想法吗?
猜你喜欢
  • 2016-02-28
  • 2018-03-15
  • 2016-03-29
  • 2020-03-10
  • 2017-01-09
  • 2017-06-11
  • 2018-08-18
  • 1970-01-01
  • 2022-01-06
相关资源
最近更新 更多