learning-rust/TvTa-ui/README.md

155 lines
5.5 KiB
Markdown
Raw Permalink Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

# TvTa UI - 现代化跨平台桌面应用模板
👋 欢迎使用 **TvTa UI**!这是一个专为小白和全栈开发者设计的现代化桌面应用模板。无论你是使用 macOS 还是 Windows都可以通过本项目快速构建出一个美观、功能强大的桌面软件。
本项目基于最新的 **Tauri 2.0**(高性能、小体积)、**Vue 3**(易上手的前端框架)和 **Naive UI**(高颜值组件库)构建。
---
## ✨ 核心亮点
* 🖥️ **跨平台支持**: 完美支持 macOS (M1/Intel) 和 Windows 10/11。
* 🎨 **高颜值 UI**: 内置 Naive UI + UnoCSS提供深色/浅色模式一键切换。
* 🧩 **多布局系统**: 支持“侧边栏导航”和“顶部导航”两种布局,可随时切换。
* 🌍 **国际化支持**: 内置中英文切换功能,支持自动跟随系统或手动设置。
* 🛠️ **系统级能力**: 已封装关机、重启、WiFi 控制、蓝牙设置、开机自启等系统底层功能。
* 🔌 **后端对接**: 内置 Axios 网络请求封装,开箱即用,轻松对接 Spring Boot 等后端。
---
## 🛠️ 环境准备 (小白必读)
在开始之前,请确保你的电脑上安装了以下基础软件。
### 1. 安装 Node.js (前端运行环境)
* **下载地址**: [Node.js 官网](https://nodejs.org/)
* **推荐版本**: 下载 **LTS (长期支持版)**,例如 v18 或 v20。
* **验证**: 打开终端(Mac)或CMD(Win),输入 `node -v`,出现版本号即成功。
### 2. 安装 Rust (Tauri 核心依赖)
Tauri 依赖 Rust 语言环境进行打包构建。
#### 🍎 macOS 用户
打开终端 (Terminal),复制以下命令并回车:
```bash
curl --proto '=https' --tlsv1.2 -sSf https://sh.rustup.rs | sh
```
安装完成后,**重启终端**,输入 `rustc --version` 验证。
#### 🪟 Windows 用户
1. 访问 [Rust 官网安装页面](https://www.rust-lang.org/tools/install)。
2. 下载 `RUSTUP-INIT.EXE` (64位) 并运行。
3. 按照提示一路回车安装(需要安装 Visual Studio C++ 生成工具,安装程序会自动提示)。
4. 安装完成后,打开 CMD 或 PowerShell输入 `rustc --version` 验证。
### 3. 安装包管理器 pnpm (推荐)
本项目推荐使用 `pnpm`,因为它比 npm 更快更省空间。
```bash
npm install -g pnpm
```
---
## 🚀 快速启动
### 第一步:下载项目并进入目录
如果你已经下载了解压包,请直接在终端进入该文件夹:
```bash
cd tvta-ui
```
### 第二步:安装依赖
这一步会下载所有需要的第三方库Vue, Naive UI 等)。
```bash
pnpm install
```
*(如果网络不好,可能会慢一些,请耐心等待)*
### 第三步:启动开发模式
这一步会启动一个本地窗口,你可以实时看到修改的效果。
```bash
pnpm tauri dev
```
🎉 **成功!** 你应该能看到一个名为 "TvTa UI" 的应用窗口弹出来了。
---
## 📦 打包发布
想把做好的软件发给朋友用?只需要一个命令!
### macOS 打包 (生成 .dmg / .app)
```bash
pnpm tauri build
```
生成的安装包在:`src-tauri/target/release/bundle/dmg/`
### Windows 打包 (生成 .exe / .msi)
```bash
pnpm tauri build
```
生成的安装包在:`src-tauri/target/release/bundle/nsis/`
---
## 🔌 功能使用指南
### 1. 切换布局
点击顶部导航栏的 **"布局切换"** 图标(类似网页模板的图标),可以在“侧边栏模式”和“顶部菜单模式”之间无缝切换。
### 2. 多语言切换
点击顶部导航栏的 **"地球仪"** 图标,可以切换 **简体中文****English**
### 3. 系统功能测试
进入左侧菜单的 **"系统方法测试"** 页面,你可以尝试:
* 🔒 **锁定屏幕**
* 📡 **开关 WiFi** (需管理员权限)
* 🔊 **调节音量** (目前主要支持 macOS)
* 🚀 **设置开机自启**
### 4. 对接后端接口
打开 `src/utils/request.ts` 文件,修改 `baseURL` 为你的后端地址:
```typescript
const service = axios.create({
baseURL: 'http://localhost:8080', // 修改这里,例如 'https://api.myapp.com'
timeout: 5000
})
```
---
## ❓ 常见问题 (Q&A)
**Q: 启动时报错 `failed to get serde` 或网络连接错误?**
A: 这通常是国内网络连接 Rust 官方源 (crates.io) 慢导致的。
**解决方法**: 我们已经为你配置了中科大 (USTC) 镜像源。如果仍有问题,请检查你的网络代理设置,或者尝试在终端运行 `unset https_proxy` 关闭代理。
**Q: Windows 上提示缺少 "WebView2"**
A: Windows 10/11 通常自带 WebView2。如果是旧版系统Tauri 安装程序会自动提示用户下载安装,无需担心。
**Q: 为什么有些系统功能(如关机)点击没反应?**
A: 在开发模式 (`pnpm tauri dev`) 下,系统权限可能受限。请尝试打包后安装运行,或者以管理员身份运行终端。
---
## 📂 项目结构一览
```
tvta-ui/
├── src/
│ ├── components/ # 公共组件 (布局切换器、语言切换器等)
│ ├── layouts/ # 布局文件 (MainLayout, TopMenuLayout)
│ ├── locales/ # 多语言文件 (zh-CN.ts, en.ts)
│ ├── stores/ # 状态管理 (Pinia)
│ ├── sys-methods/ # 系统底层方法封装 (电源、网络等)
│ ├── views/ # 页面文件
│ ├── App.vue # 根组件
│ └── main.ts # 入口文件
├── src-tauri/ # Rust 后端代码 (配置、权限、图标)
└── package.json # 项目配置
```
---
**Happy Coding! 祝你开发愉快!** 🚀