news 2026/9/10 17:53:28

前端——跨平台桌面应用开发实践

作者头像

张小明

前端开发工程师

1.2k 24
文章封面图
前端——跨平台桌面应用开发实践

Electron等技术让前端开发者能够构建跨平台桌面应用。本文将介绍桌面应用开发的关键技术点。

1 Electron基础架构

// 主进程 main.jsconst{app,BrowserWindow,ipcMain}=require('electron')constpath=require('path')letmainWindowconstcreateWindow=()=>{mainWindow=newBrowserWindow({width:1200,height:800,webPreferences:{nodeIntegration:false,contextIsolation:true,preload:path.join(__dirname,'preload.js')}})mainWindow.loadFile('index.html')}app.whenReady().then(createWindow)// IPC通信ipcMain.handle('save-file',async(event,data)=>{// 处理保存文件逻辑constresult=awaitsaveToFile(data)returnresult})

2 预加载脚本

// preload.jsconst{contextBridge,ipcRenderer}=require('electron')contextBridge.exposeInMainWorld('electronAPI',{saveFile:(data)=>ipcRenderer.invoke('save-file',data),onFileSaved:(callback)=>ipcRenderer.on('file-saved',callback),// 文件系统访问selectDirectory:()=>ipcRenderer.invoke('select-directory'),// 系统托盘minimizeToTray:()=>ipcRenderer.invoke('minimize-to-tray')})

3 桌面应用特有功能

// 渲染进程使用APIexportdefault{methods:{asyncsaveDocument(){try{constresult=awaitwindow.electronAPI.saveFile(this.documentData)this.$message.success('文件保存成功')}catch(error){this.$message.error('文件保存失败')}},asyncselectFolder(){constfolderPath=awaitwindow.electronAPI.selectDirectory()if(folderPath){this.selectedFolder=folderPath}}}}
版权声明: 本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若内容造成侵权/违法违规/事实不符,请联系邮箱:809451989@qq.com进行投诉反馈,一经查实,立即删除!
网站建设 2026/9/10 9:38:53

day41早停策略和模型权重的保存@浙大疏锦行

day41早停策略和模型权重的保存浙大疏锦行 基于day40代码实现模型权重的保存和早停 # 定义损失函数和优化器 criterion nn.CrossEntropyLoss() optimizer optim.Adam(model.parameters(), lr0.001)# 训练参数 num_epochs 1000 check_interval 10 # 每多少轮检查一次验证…

作者头像 李华
网站建设 2026/9/10 10:08:12

[免费]基于Python的Flask+Vue物业管理系统【论文+源码+SQL脚本】

大家好,我是java1234_小锋老师,看到一个不错的基于Python的FlaskVue物业管理系统【论文源码SQL脚本】,分享下哈。 项目视频演示 https://www.bilibili.com/video/BV1AEqpBFExf/ 项目介绍 本文首先实现了基于Python的FlaskVue物业管理系…

作者头像 李华
网站建设 2026/9/10 5:54:50

07_软考_程序设计语言

程序设计语言概述 程序设计语言的基本概念程序设计语言的基本成本语言处理程序基础 编译程序基本原理文法分析文法类型正规式有限自动机语法分析方法答案:B

作者头像 李华