初始化

需要注意的是饥荒不够完善:动作、手持工具、细节交互、系统逻辑
This commit is contained in:
李琦
2026-08-15 07:24:34 +08:00
parent aa37fc4119
commit cd1ab90013
150 changed files with 40801 additions and 271 deletions

20
electron/preload.cjs Normal file
View File

@@ -0,0 +1,20 @@
// Electron 预加载脚本:以 contextBridge 向渲染进程暴露最小桌面端 API
// 前端凭 window.desktop 是否存在来区分「桌面端 / 浏览器」两种运行环境
const { contextBridge, ipcRenderer } = require('electron')
// 同步读取后端服务器地址:必须在页面脚本执行前就绪(axios/WS 初始化要用)
const serverBase = ipcRenderer.sendSync('nlg:get-server-base')
contextBridge.exposeInMainWorld('desktop', {
// 后端服务器地址(形如 http://127.0.0.1:8080,结尾不带斜杠)
serverBase,
// 修改服务器地址(校验通过后主进程会自动重载页面)
setServerBase: (url) => ipcRenderer.invoke('nlg:set-server-base', url),
// 检查桌面端新版本(silent=true 时已是最新版不弹窗,用于启动自动检查)
checkUpdate: (silent = false) => ipcRenderer.invoke('nlg:check-update', silent),
// 运行环境版本信息
versions: {
electron: process.versions.electron,
chrome: process.versions.chrome,
},
})