【问题标题】:Cannot find module(s) NodeJs with Electron after building构建后找不到带有 Electron 的模块 NodeJ
【发布时间】:2018-09-14 13:17:25
【问题描述】:

我有一个电子应用程序,可以在我的 Mac 上使用 npm start electron .。但是,当我使用 electron-packager 为 Mac 编译它时,打开编译的应用程序文件时出现以下错误

bootstrap.min.css Failed to load resource: net::ERR_FILE_NOT_FOUND
module.js:487 Uncaught Error: Cannot find module './node_modules/jquery/dist/jquery.min.js'
    at Module._resolveFilename (module.js:485:15)...
module.js:487 Uncaught Error: Cannot find module 'node-wifi'
    at Module._resolveFilename (module.js:485:15)

我认为这与设置正确的文件路径有关,但我在 index.js 和 functions.js 文件中尝试了以下操作,但没有成功:

var path = require('path');

module.paths.push(path.resolve('node_modules'));
module.paths.push(path.resolve('../node_modules'));

以下是其他相关文件和命令:

package.json:

  "main": "index.js",
  "scripts": {
    "test": "echo \"Error: no test specified\" && exit 1",
    "start": "electron ."
  },
  "devDependencies": {
    "electron": "^1.8.4",
    "electron-packager": "^12.0.0"
  },
  "dependencies": {
    "electron-packager": "^12.0.0",
    "bootstrap": "^4.0.0",
    "electron-reload": "^1.2.2",
    "electron-store": "^1.3.0",
    "jquery": "^3.3.1",
    "node-wifi": "^2.0.4",
    "sweetalert2": "^7.18.0"
  }

构建命令:

electron-packager . --overwrite --platform=darwin --arch=x64  --prune=true --out=release-builds

index.html

<!DOCTYPE html>
  <html>
    <head>
      <meta charset="UTF-8">
      <title>Hello World!</title>
      <link rel="stylesheet" href="node_modules/bootstrap/dist/css/bootstrap.min.css">
      <script>window.$ = window.jQuery = require('jquery');</script>
      <script src="functions.js"></script>
      <script type='text/javascript'>
      // On click we should send event to close window.
    </script>
    </head>

index.js(依赖)

const {app, BrowserWindow , ipcMain, dialog} = require('electron')
const path = require('path');
const url = require('url');

functions.js(依赖)

const { ipcRenderer } = require("electron");
var child_process = require('child_process');
var wifi = require('node-wifi');
var swal = require('sweetalert2');
const Store = require('electron-store');
const store = new Store();

【问题讨论】:

    标签: node.js electron electron-packager


    【解决方案1】:

    它不喜欢构建命令中的--prune=true。我将其设置为 false,它似乎正在工作。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2020-09-17
      • 2018-06-13
      • 2019-12-30
      • 2021-09-06
      • 2017-11-27
      • 1970-01-01
      • 2015-02-02
      • 2016-01-01
      相关资源
      最近更新 更多