electron 开发问题
eletron+vite开发遇到的问题
electron
下载镜像地址修改- 使用 nodejs 开启 electron main 进程的方式
const electronPath = require('electron');
const { spawn } = require('child_process');
// 这个 . 的路径也就是 main.js 的路径
或者借助开源工具catdad/electronmon,这个开源工具还会检测main.js
的变化自动重启electron
vite 打包的 esmodule 语法
<script type="module">
不支持electron
的File
协议,使用vite-plugin-singleFile
将打包产物内联到 HTML 中;web 内部访问 electron 的 api,例如关闭窗口等,需要借助
electron-preload
线程间通信的机制拖拽区域右键会显示系统菜单解决方法 —— https://github.com/electron/electron/issues/26726#issuecomment-1143199775
如何处理
File
协议和HTTP
协议的冲突,本以为electron
在生产环境使用File
协议加载本地文件会在 HTTP 请求的时候限制跨域,实际上只要在axios
这种 ajax 工具内部设置请求 URL 的baseUrl
,在请求的时候串接完整的 URL 就可以直接发起 HTTP 请求electron-builder
打包遇到下载错误的问题,一般需要这三个包:
下载下来放在本地%LOCALAPPDATA%\electron-builder\Cache
这个目录下并解压