vue中electron与vue通信(fs.existsSync is not a function解决方案)

electron向vue发送消息

dist/main.js (整个文件配置在另一条博客里)

javascript 复制代码
win = new BrowserWindow({
  width:1920,
  height:1080,
  webPreferences: {
		// 是否启用Node integration
        nodeIntegration: true, // Electron 5.0.0 版本之后它将被默认false
        // 是否在独立 JavaScript 环境中运行 Electron API和指定的preload 脚本.默认为 true
        contextIsolation: false,  // Electron 12 版本之后它将被默认true 
   }
})
win.webContents.send('message-from-main', 'message')

vue文件中

javascript 复制代码
<script>
const { ipcRenderer } = window.require("electron"); // 不加window会报错 fs.existsSync is not a function
mounted() {
	ipcRenderer.on("message-from-main", (event, value) => {
    	console.log(value, "value"); // message
   	})
}
</script>

vue向electron发送消息

vue文件中

javascript 复制代码
<script>
const { ipcRenderer } = window.require("electron");
mounted() {
	ipcRenderer.send('message-from-vue', { data: 'message' })
}
</script>

dist/main.js (整个文件配置在另一条博客里)

javascript 复制代码
const { ipcMain } = electron;
win = new BrowserWindow({
  width:1920,
  height:1080,
  webPreferences: {
		// 是否启用Node integration
        nodeIntegration: true, // Electron 5.0.0 版本之后它将被默认false
        // 是否在独立 JavaScript 环境中运行 Electron API和指定的preload 脚本.默认为 true
        contextIsolation: false,  // Electron 12 版本之后它将被默认true 
   }
})
ipcMain.on('message-from-vue', (event, arg) => {
  console.log(arg.data, "message-from-vue"); // message
})
相关推荐
仿生狮子1 小时前
把 Git 提交历史变成一条流动的河——Project River
vue.js·设计·vibecoding
xixingzhe25 小时前
idea启动vue项目
java·vue.js·intellij-idea
超级无敌暴龙兽5 小时前
和我一起刷面试题呀
前端·面试
wzl202612135 小时前
企业微信定时群发技术实现与实操指南(原生接口+工具落地)
java·运维·前端·企业微信
小码哥_常5 小时前
Robots.txt:互联网爬虫世界的“隐形规则”
前端
小码哥_常6 小时前
Android开发神器:AndroidAutoSize,轻松搞定屏幕适配
前端
前端一小卒6 小时前
前端工程师的全栈焦虑,我用 60 天治好了
前端·javascript·后端
不停喝水6 小时前
【AI+Cursor】 告别切图仔,拥抱Vibe Coding: AI + Cursor 开启多模态全栈新纪元 (1)
前端·人工智能·后端·ai·ai编程·cursor
coderyi7 小时前
LLM Agent 浅析
前端·javascript·人工智能