进程间通信用ipcRenderer,ipcMain官网写的很清楚
但问题在于,我使用vue-cli-plugin-electron-builder引入electron
想做进程间通信
import {ipcRenderer} from ‘electron’
引入一直报错
原因如下
方式一:Node Integration
1 2 3 4 5 6 7 8
| # vue.config.js module.exports = { pluginOptions: { electronBuilder: { nodeIntegration: true } } }
|
方式二:预加载
1.在src下新建一个js
1 2 3 4
| # ./src/preload.js
import { ipcRenderer } from 'electron' window.ipcRenderer = ipcRenderer
|
2.修改vue.config.js
1 2 3 4 5 6 7 8
| # ./vue.config.js module.exports = { pluginOptions: { electronBuilder: { preload: 'src/preload.js', } } }
|
3.修改主进程文件
1 2 3 4 5 6 7 8 9 10 11
| # ./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.使用