【问题标题】:Electron call from renderer to main从渲染器到主的电子调用
【发布时间】:2020-04-03 02:49:16
【问题描述】:

正如How to call a function/module in Electron from my webpage? 中的回答,我试过了,但代码需要电子。

const { remote } = require('electron');
const mainProcess = remote.require('./main.js');

mainProcess.test();

我将渲染器作为单独的存储库并在构建时出错:

10 silly lifecycle scratch-desktop@3.6.0~build-gui: Args: [ '/d /s /c', 'node ./scripts/run-in-gui.js build' ]
11 silly lifecycle scratch-desktop@3.6.0~build-gui: Returned: code: 1  signal: null
12 info lifecycle scratch-desktop@3.6.0~build-gui: Failed to exec build-gui script
13 verbose stack Error: scratch-desktop@3.6.0 build-gui: `node ./scripts/run-in-gui.js build`
13 verbose stack Exit status 1
13 verbose stack     at EventEmitter.<anonymous> (C:\Users\caxap\AppData\Roaming\npm\node_modules\npm\node_modules\npm-lifecycle\index.js:332:16)
13 verbose stack     at EventEmitter.emit (events.js:210:5)
13 verbose stack     at ChildProcess.<anonymous> (C:\Users\caxap\AppData\Roaming\npm\node_modules\npm\node_modules\npm-lifecycle\lib\spawn.js:55:14)
13 verbose stack     at ChildProcess.emit (events.js:210:5)
13 verbose stack     at maybeClose (internal/child_process.js:1028:16)
13 verbose stack     at Process.ChildProcess._handle.onexit (internal/child_process.js:283:5)
14 verbose pkgid scratch-desktop@3.6.0
15 verbose cwd D:\scratch-desktop
16 verbose Windows_NT 10.0.17763
17 verbose argv "D:\\Awork\\Apps simple\\nodejs\\node.exe" "C:\\Users\\caxap\\AppData\\Roaming\\npm\\node_modules\\npm\\bin\\npm-cli.js" "run" "build-gui"
18 verbose node v13.0.1
19 verbose npm  v6.13.2
20 error code ELIFECYCLE
21 error errno 1
22 error scratch-desktop@3.6.0 build-gui: `node ./scripts/run-in-gui.js build`
22 error Exit status 1
23 error Failed at the scratch-desktop@3.6.0 build-gui script.
23 error This is probably not a problem with npm. There is likely additional logging output above.
24 verbose exit [ 1, true ]
Module not found: Error: 
Can't resolve 'fs' in 
'D:\scratch-desktop\node_modules\scratch-gui\node_modules\scratch-vm\node_modules\electron'

依赖关系图:scratch-desktop (electron) -> scratch-gui -> scratch-vm(我调用的地方)

【问题讨论】:

  • 您的main.js 文件中有什么内容?

标签: javascript node.js electron


【解决方案1】:

为了更好地回答这个问题,发布您的 package.json 并确保电子在您的依赖项中会有所帮助。如果不是,请 npm install electron,如果是,请尝试以下操作:

要让 ipcRenderer 和 ipcMain 工作,您需要 2 个东西

在您的主应用程序/main.js 中,您需要需要 ipcMain

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

在您的渲染器进程中,您应该像这样要求它:

const { ipcRenderer } = require('electron');

【讨论】:

  • vm:依赖中的电子,桌面:依赖中的电子
猜你喜欢
  • 2021-07-22
  • 1970-01-01
  • 2018-10-10
  • 2017-03-25
  • 2018-05-21
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2021-04-26
相关资源
最近更新 更多