如何解决电子对话框未定义
在看到大量关于电子对话框和 ipcMain 返回未定义的 stackoverflow 答案之后。 我理解这两个都必须在主进程中调用。
我的问题是我不知道如何声明主进程,因为我无法调用 ipcMain。我不知道我是不是理解得不够好,或者我遗漏了一些文件(我也尝试创建一个 renderer.js 文件来分隔两个进程......没有奏效)。
产生错误:
TypeError: Cannot read property 'showOpenDialog' of undefined
我的 preload.js 是
const {ipcMain} = require('electron').remote
console.log(ipcMain)
我的 main.js 是:
const { app,BrowserWindow } = require('electron')
const path = require('path')
require('electron-reload')(__dirname);
function createWindow () {
const win = new BrowserWindow({
width: 800,height: 600,webPreferences: {
preload: path.join(__dirname,'preload.js')
}
})
win.loadFile('index.html')
}
app.whenReady().then(() => {
createWindow()
app.on('activate',() => {
if (BrowserWindow.getAllWindows().length === 0) {
createWindow()
}
})
})
app.on('window-all-closed',() => {
if (process.platform !== 'darwin') {
app.quit()
}
})
电子版 12.0.5
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。