Ошибка при связывании электронных файлов с веб-пакетом - не удается разрешить некоторые модули узлов в процессе рендеринга - PullRequest
0 голосов
/ 12 марта 2020

По сути, всякий раз, когда я связываю свое электронное приложение с веб-пакетом, во время процесса связывания я получаю ошибку, что он не может разрешить 'fs' и 'child-process' из index.js, поскольку это процесс визуализации. Вот мой конфиг веб-пакета:

const { resolve } = require("path");
module.exports = [
{
    mode: "production",
    target: "electron-main",
    entry: "app/main.js",
    output: {
        path: resolve(__dirname, "dist/app")
    }
},
{
    mode: "production",
    entry: "app/index.js",
    target: "electron-renderer",
    output: {
        path: resolve(__dirname, "dist/app"),
        filename: "index.js"
    }
 },
];

Как видите, целевой режим был установлен соответственно, main.js является основным процессом, а index.js, процессом визуализации, насколько я Я обеспокоен тем, что это не проблема, связанная с целевым вариантом.

Кроме того, при запуске программы в разработке, с electron ., все работает правильно. Также да, в пакете. json, для свойства "main" задан правильный путь и файл, который равен main.js.

Также для nodeIntegration установлено значение true внутри файла main.js, поэтому процесс визуализации (index.js) имеет доступ к модулям узла на стороне сервера. Так что это тоже не проблема, я думаю.

Это также не работает, если я пытаюсь требовать серверные модули из основного процесса, затем назначать необходимые модули глобальному объекту, а затем доступ к глобальному объекту с помощью пакета remote из процесса визуализации. Webpack по-прежнему не может разрешить 'fs' и 'child_process'.

Если вам нужна дополнительная информация / код, вы можете сообщить мне об этом в комментариях, и я отредактирую этот пост, так как я не хочу размещать здесь много кода, чтобы оставить вопрос удобочитаемый.

Вот ошибка:

    ERROR in ./app/index.js
Module not found: Error: Can't resolve 'fs' in 
 'C:\Users\xyz\Desktop\xxxx\packagename\app'
  @ ./app/index.js 19:11-24

    ERROR in ./app/index.js
 Module not found: Error: Can't resolve 'child_process' in 
  'C:\Users\xyz\Desktop\xxxx\packagename\app'
   @ ./app/index.js 21:17-41

Вот пакет. json

{
"name": "my-package",
"version": "1.0.0",
"description": "",
"main": "app/main.js",
"scripts": {
    "build-electron": "webpack app",
    "dev": "electron ."
},
"author": "MWR",
"license": "ISC",
"dependencies": {
    "css-loader": "^3.4.2",
    "electron": "^8.1.0",
    "js-base64": "^2.5.2",
    "mini-css-extract-plugin": "^0.9.0",
    "webpack": "^4.41.6"
},
"devDependencies": {
    "html-webpack-plugin": "^3.2.0",
    "webpack-cli": "^3.3.11"
}
}
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...