# 2024.09.07 - 新增已知问题: - preload预加载,不能直接传导出process,会导致程序假死、主界面无显; - 渲染进程中,要使用通过预加载传导的变量,最好还是用window.*的方式 # 2024.09.06 - 修复增加了系统托盘按钮功能,主要涉及的文件 - src/renderer/public/tray.html (这个是用于定制化的托盘,我因为没有精力搞,简化了,所以直接无视了它) - src/main/中,添加了trayHook、修改了trayManager # 2024.09.05 - 关于新增自定义主题,需要调用nodejs模块的API时,不应直接调用(在electron中会失效),而是参考 src/utils/ipcRender的进程通信方式。大部分情况下,这是不需要的,因为我已经写好了很多来适配。在* /views/demo中可以找到主|子进程之间通信的示例。 - 需要新增主|子 进程间通信的,已知要进行以下操作: - 强烈建议任何文件修改前,请在其所在目录直接完整复制保存一份!!! - 任何时候,不要破坏这几个文件的结构,只按照以下说明添加具体功能即可!!! - src/ipc.ts中,添加类型声明,在enum(枚举)channel中,参照添加即可。 - src/main/services/ipcMain.ts中,添加需要增加的通信功能。 # 2024.09.04 - 修复了几个开发依赖,至此,要求必须使用yarn为包管理工具 - 修复了preload.js调用,修复主进程与渲染进程的通信;尝试将主进程脚本与渲染进程脚本完全分离 - 主要涉及文件: - src/main/config/ => staticPath.ts、windowsConfig.ts - src/main/services => windowManager.ts - 修改了dev-runner.ts脚本中的欢迎函数,自定义了chalk脚本的欢迎词“hi-sass” - 修复热更新脚本语法错误: - npm i --save-dev @types/adm-zip, 使adm-zip插件支持ts - const zip = new AdmZip() - 修复改进了主进程中的部分循环引用,减少不必要的错误。具体文件归类尚待最终确认。 # 2024.09.01 - 修复express来模拟mock服务的参数路由问题;路由中带参数时,body是函数,不能直接输出结果,需要执行该函数。具体代码在@main/server/server.ts中。 - 添加热键支持,修复全局复制、粘贴等按钮的响应。具体代码在@main/config/hotkeys.ts中。 - 重整文件夹,相应调整对应的设置;注意: 文件夹位置如有移动,需要相应地调整引用 - 在vite.config.mts及ts.config中均配置了文件路径别名,方便后期开发使用;文件夹移动也方便一些; - 别名路径文件夹移动后,要注意重新配置上述两个文件 - mock文件夹不可以放置在根目录,即使配置了别名,也可能会有各种乱七八糟的报错 - 非特殊情况,都建议将运行代码放置在根目录别名@下(也就是src/renderer/) - 如果对框架没有修改的需求,只需要修改前端,就无须修改src/renderer/目录以外的文件。 # 2024.08.28 - 添加univerJs组件,由于使用yarn方式无法自动为它安装peerDependencies依赖,所以需要额外手动补充添加; - 另外,已知还需要依赖外部库: - react - @wendellhu/redi - clsx - rxjs - dayjs - @grpc/grpc-js - 使用express-ws做wss服务器模拟,依赖于express,ts中还需要安装@types/express-ws # 2024.08.27 - 去掉mock尝试及相关依赖,改为使用express做服务器进行模拟(配置容易、编写简洁,简直不要太方便),ts需要安装 @types/express # 2024.08.25 - TBD:修复模拟浏览器,升级相应语法到最新; - 浏览器函数文件在src/main/services/browserHandle.ts中 - 里面默认的url地址,是在src/main/config/const.ts中配置 # 2024.08.21 - 修复依赖,更新到最新包 - 添加express依赖,制作内置服务器使用 - 添加element-plus作为前端默认UI组件,相应地,有以下编译前变量定义 - 默认主题:@theme ,在 .electron-vite/vite-config.mts 文件; - 组件库形成的主题文件,应该有一套完整的、可独立访问的前端路径; - 主题目录: src/renderer/themes/ 下;默认 default - 非必要不建议对themes进行任何更改。 - 如果使用其他组件,可在主题目录下新建一个目录,并将一应文件存入。具体可参考themes里的default目录 - 如果需要完善补充默认主题,建议复制default目录全部内容后再改。 - 启用新的主题,需要修改 @theme 的路径定义。 - 主题内,建议使用相对路径进行各内容的引用。 - 其他补充: - 添加mock,做本地调试 - 尝试:修改了src下的request.ts中的baseURL,(有可能还需要改回来) # 2024.08.20 - 修复依赖 minimist - 检查是否存在: npm i --save-dev @types/minimist - 安装: yarn add @types/minimist - 修复依赖 semver - 检查是否存在: npm i --save-dev @types/semver - 安装: yarn add @types/semver - 修改主应用菜单 - 文件目录: src/main/hooks/menu-hooks.ts - 暂时去掉了“关于”菜单中的多余按钮(对话框相应的事件没写好,暂时去掉) - 项目定名:hi-sass-frame-front - 修改package.json - 修改build.json - 修复build脚本 - 文件: .electron-vite/build.ts - web()或unionBuild()为异步方法,需要添加.then()来操作回调结果。 - 修复语言包加载报错问题 :vue: Property glob does not exist on type ImportMeta - 报错文件:src/i18n/index.ts - 问题:import.meta.glob函数报错 - 原因:使用了ts类型的文件,需要处理相应的types类型 - 解决:(1)修改tsconfig.json,types中添加“vite/client”;此时,大部分vite构建的项目都基本OK了; (2)添加glob.d.ts声明文件,放置在合适的位置;对于electron-vite配置,本项目指定了customTypes目录存放这些额外的声明文件,我又自定义了一个fixTypes目录来存放开发中需要补充的声明文件。文件内添加声明头注释: ```/// ``` - 修改启动界面提示文字 - 文件: src/render/public/loader.html - 修改:"资源加载中" - 添加release目录,用于存放打包好的APP - 目前以版本号为子目录 - 替换程序的默认图标 - mac 系统创建icns图标需要用到命令行. - 第一步:选定png图标文件(高清,1024*1028分辨率以上); - 第二步:在当前目录下创建文件夹 pngpic.iconset; - 第三步:命令sips生成图标文件(7组共14张),全部存放在pngpic.iconset目录下; - 第四步:命令iconutil生成icns文件 - 命令参考 ```bash sips -z 16 16 hi.png --out icon_16x16.png sips -z 32 32 hi.png --out icon_16x16@2x.png sips -z 32 32 hi.png --out icon_32x32.png sips -z 64 64 hi.png --out icon_32x32@2x.png sips -z 64 64 hi.png --out icon_64x64.png sips -z 128 128 hi.png --out icon_64x64@2x.png sips -z 128 128 hi.png --out icon_128x128.png sips -z 256 256 hi.png --out icon_128x128@2x.png sips -z 256 256 hi.png --out icon_256x256.png sips -z 512 512 hi.png --out icon_256x256@2x.png sips -z 512 512 hi.png --out icon_512x512.png sips -z 1024 1024 hi.png --out icon_512x512@2x.png sips -z 1024 1024 hi.png --out icon_1024x1024.png sips -z 2048 2048 hi.png --out icon_1024x1024@2x.png ``` ```bash iconutil -c icns pngpic.iconset -o icon.icns ``` # 2024.08.19 - 项目创建。 - 项目基础构成: - electron@31.4.0 - vue@3.4.21 - element-plus@2.7.5 - vite@5.2.7