因此推荐使用electron来做桌面端应用,以现有的电脑配置来说,只要你的代码不要写的太烂,在用户的体验中感受不到和flutter桌面端应用性能上有明显的差别,且electron支持Linux系统,多端兼容性好,强烈推荐
使用Electron、Vite、Vue 3 和 TypeScript 搭建项目的步骤 使用Electron、Vite、Vue 3 和 TypeScript 搭建一个桌面应用项目,可以遵循以下步骤: 创建Vite + Vue 3 + TypeScript 项目: 使用Vite 创建一个新的 Vue 3 项目,并指定使用 TypeScript。 bash npm create vite@latest my-vue3-ts-app -- --template...
我们需要先借助Vite初始化一个Vue3+TS 的项目,后面我们在逐步添加electron,在任何一个文件夹下: 执行命令: npm create vite@latest my-vue-app -- --template vue-ts 安装依赖: npm install 运行项目: npm run dev 这样一个最简单的Vue3 + TS + Vite的前端项目就初始化好了。 2.安装Electron相关包 初始...
上段代码主要是一个入口文件,我们把创建创建窗口、创建监听事件、创建系统托盘等操作都风窗到了 window.ts 文件中,这里重点理解下面三个方法: window.listen() window.createWindows({ isMainWin: true }) window.createTray(); 3.2 新建 electron-main/window.ts 文件 前面的 index.ts 只是主进程的入口文件,接...
我们需要先借助Vite初始化一个Vue3+TS的项目,后面我们在逐步添加electron,在任何一个文件夹下: 执行命令: npm create vite@latest my-vue-app -- --template vue-ts 安装依赖: npm install 运行项目: npm run dev 这样一个最简单的Vue3 + TS + Vite的前端项目就初始化好了。
创建vite+vue3+ts项目 创建项目可参考:vue3+ts项目构建 安装electron相关依赖 npm install -D electron electron-builder electron-devtools-installer vite-plugin-electron vite-plugin-electron-renderer rimraf 新建electron-main/index.ts文件 import { app, BrowserWindow } from "electron"; ...
针对于我们当前的Electron+Vue3+TS项目,主要实现以下需求。 需求如下: 在渲染进程中,直接调用某个方法即可打开新窗口。 默认打开的新窗口是一个子窗口。 打开新窗口方法可以接收参数。 可以传入路由地址,新窗口渲染此路由地址页面。 可以传入窗口样式,如宽高、背景色、是否显示默认菜单栏等等。
main.ts App.vue background.ts //手动创建文件用于编写electron package.json tsconfig.json vite.config.ts background.ts import { app, BrowserWindow } from 'electron' // 等待Electron应用就绪后创建BrowserWindow窗口 app.whenReady().then(async () => { ...
1 打包vue 2将vue的入口文件接入electron 3 打包electron这样我们就能得到完整的安装包 # package.json {"name":"vuets_electron","private":true,"version":"1.0.0","main":"src/main/main.js",// +++"scripts": {"dev":"vite","build":"vue-tsc && vite build","preview":"vite preview","elec...
main.ts App.vue background.ts//手动创建文件用于编写electron package.json tsconfig.json vite.config.ts background.ts import { app, BrowserWindow } from 'electron' // 等待Electron应用就绪后创建BrowserWindow窗口 app.whenReady().then(async () => { const win = await new BrowserWindow({ width: ...