Tauri 2.0 发布:开启跨平台开发新篇章【Vite + Vue3 +TypeScript + Tauri 2.0】

一、Tauri 2.0 发布:开启跨平台开发新篇章

一、Tauri 简介

Tauri 是一个轻量级框架,它支持开发者在主流的桌面(如 macOS、Linux 和 Windows)以及移动平台(iOS、Android)上构建应用程序。该框架的一大特色是允许前端开发者利用他们熟悉的 HTML、JavaScript 和 CSS 技术栈来创建应用界面,同时还能通过 Rust、Swift 或 Kotlin 来处理后端逻辑或性能密集型任务。不过,在很多场景下,仅依靠 JavaScript API 就能满足大部分需求。
官网:https://tauri.app/
在这里插入图片描述

二、为何选择 Tauri?
  • 统一代码库:一次编写,多处运行,极大地简化了跨平台软件开发流程。
  • 广泛兼容性:无论是传统的PC还是最新的智能手机,Tauri都能确保您的应用无缝运行于不同操作系统之上。
  • 前端友好:非常适合那些希望从Web技术转向原生应用开发的前端工程师们。
  • Rust集成:对于追求极致性能与安全性的Rust程序员而言,Tauri提供了一种优雅的方式将复杂业务逻辑嵌入到用户界面中。
三、社区活跃度及影响力

自发布以来,Tauri受到了全球范围内众多开发者的热烈欢迎。截至最近统计,其GitHub仓库已累积超过8万个Star标记,共收到近5千次Pull Request,并解决了数千个问题报告。此外,还有大约17,700名成员加入了官方Discord频道,在那里大家可以交流心得、解决问题。
在这里插入图片描述

四、升级至Tauri 2.0

自从2022年6月推出首个稳定版本之后,经过两年时间不断地迭代优化,现在我们迎来了更加成熟完善的Tauri 2.0。此次更新不仅引入了一系列新功能和改进措施,还特别强调了用户体验的提升。具体迁移步骤请参阅官方文档指南。

五、Tauri 2.0 新特性概览
  • 便捷入门:新增create-tauri-app命令行工具帮助新手快速搭建项目骨架。
  • 热更新机制:实现了热模块替换(HMR)技术,让开发者可以在不重启程序的情况下看到修改效果,极大提高了调试效率。
  • 插件生态:增强了对第三方插件的支持力度,特别是增加了针对移动端的扩展能力。
  • 全面覆盖:正式宣布对iOS和Android两大移动操作系统的完整支持,意味着Tauri真正意义上成为了跨全平台解决方案。
  • 安全保障:整个架构接受了专业机构的安全审查,确保为用户提供最可靠的服务。

二、Vite + Vue3 +TypeScript + Tauri 2.0快速集成入门案例

https://tauri.org.cn/v1/guides/getting-started/setup/vite/
在这里插入图片描述

### 使用 Tauri 框架构建 Go 应用程序 Tauri 是一种用于创建安全、快速的桌面应用程序的技术,它允许开发者利用 Web 技术栈来开发应用界面,并通过 Rust 或其他语言编写后台逻辑。虽然 Tauri 主要与 Rust 集成,但也可以与其他编程语言一起工作,包括 Golang。 为了使 Go 和 Tauri 协同工作,通常的做法是在前端使用 HTML/CSS/JavaScript 构建用户界面,在后端运行一个独立的 Go HTTP 服务器作为 API 接口[^1]。这样可以实现前后端分离架构,其中 Tauri 负责渲染视图并发起请求到本地或远程的服务端接口上。 下面是一个简单的例子展示如何设置这样的环境: #### 启动一个新的 Tauri 项目 首先安装 Node.js 和 Yarn, 然后执行命令初始化新的 Tauri App: ```bash yarn create tauri-app my-tauri-project --template vanilla cd my-tauri-project ``` 这会建立好基础结构以便于后续操作[^2]. #### 创建 Go HTTP Server 接着在一个单独的位置启动 Go 的 web server 来处理来自客户端的数据交互需求。这里给出一段基本代码片段用来说明这一点: ```go package main import ( "fmt" "log" "net/http" ) func helloWorld(w http.ResponseWriter, r *http.Request) { fmt.Fprintf(w, "Hello from Go!") } func main() { http.HandleFunc("/api/hello", helloWorld) log.Fatal(http.ListenAndServe(":8080", nil)) } ``` 保存上述文件名为 `main.go` 并编译运行此服务[^3]: ```bash go run . ``` 此时应该有一个监听在 `localhost:8080/api/hello` 上提供简单响应消息的小型 RESTful API. #### 修改 Tauri 前端调用 Go API 最后一步就是修改由 Tauri 提供的应用内部 JavaScript 文件去访问这个新搭建起来的服务。假设已经成功设置了 CORS 头部信息使得跨域资源共享成为可能,则可以在浏览器控制台测试如下 AJAX 请求方法是否正常返回预期的结果: ```javascript fetch('http://localhost:8080/api/hello') .then(response => response.text()) .then(data => console.log(data)); ``` 当一切配置完成后,就可以打包发布整个应用程序了。需要注意的是实际生产环境中应当考虑更多因素比如安全性验证机制以及错误处理流程等[^4].
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

程序员猫爪

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值