进程间通信用ipcRenderer,ipcMain官网写的很清楚
但问题在于,我使用vue-cli-plugin-electron-builder引入electron
想做进程间通信
import {ipcRenderer} from 'electron'
引入一直报错
原因如下
插件文档
方式一:Node Integration
# vue.config.js
module.exports = {
pluginOptions: {
electronBuilder: {
nodeIntegration: true
}
}
}
方式二:预加载
1.在src下新建一个js
# ./src/preload.js
import { ipcRenderer } from 'electron'
window.ipcRenderer = ipcRenderer
2.修改vue.config.js
# ./vue.config.js
module.exports = {
pluginOptions: {
electronBuilder: {
preload: 'src/preload.js',
}
}
}
3.修改主进程文件
# ./src/background.js
const win = new BrowserWindow({
width: 800,
height: 600,
webPreferences: {
nodeIntegration: process.env.ELECTRON_NODE_INTEGRATION,
// 注意这一行,这一行是新增的
+ preload: path.join(__dirname, 'preload.js')
}
})
4.使用
window.ipcRenderer即可
网友评论