# 🔥 GoFaster 热加载开发指南 ## 概述 GoFaster 项目支持前后端热加载,修改代码后无需手动重启服务,大大提高开发效率。 ## 🚀 快速启动 ### 方式1:一键启动(推荐) ```bash # 在项目根目录执行 ./dev-full.ps1 ``` 这将同时启动前后端热加载服务。 ### 方式2:分别启动 ```bash # 启动后端热加载 cd backend ./dev.ps1 # 启动前端热加载(新终端) cd app ./dev-hot.ps1 ``` ## 🔧 热加载配置 ### 后端 Go 热加载 - **工具**: `air` (Go 热加载工具) - **配置文件**: `backend/.air.toml` - **监听文件**: `.go`, `.tpl`, `.tmpl`, `.html` - **排除目录**: `tmp`, `vendor`, `docs`, `testdata` ### 前端 Electron 热加载 - **工具**: `vue-cli-service` + `electron` - **配置文件**: `app/vue.config.js` - **监听文件**: `.vue`, `.js`, `.css`, `.html` - **自动重载**: 代码修改后自动重新编译并重启 Electron ## 📁 文件结构 ``` gofaster/ ├── dev-full.ps1 # 一键启动脚本 ├── backend/ │ ├── .air.toml # 后端热加载配置 │ ├── dev.bat # Windows 后端启动脚本 │ └── dev.ps1 # PowerShell 后端启动脚本 └── app/ ├── dev-hot.bat # Windows 前端启动脚本 └── dev-hot.ps1 # PowerShell 前端启动脚本 ``` ## 🎯 使用场景 ### 后端开发 1. 修改 Go 代码 2. 保存文件 3. `air` 自动检测变化 4. 自动重新编译并重启服务 5. 无需手动重启 ### 前端开发 1. 修改 Vue 组件、样式或逻辑 2. 保存文件 3. `vue-cli-service` 自动重新编译 4. Electron 自动重载 5. 界面立即更新 ## ⚡ 性能优化 ### 后端优化 - 排除测试文件和文档目录 - 设置合理的重载延迟(1秒) - 只监听必要的文件类型 ### 前端优化 - 启用增量编译 - 排除不必要的文件监听 - 使用内存中的热重载 ## 🐛 故障排除 ### 后端热加载不工作 1. 检查 `air` 是否安装:`go version -m $(which air)` 2. 确认 `.air.toml` 配置正确 3. 检查文件权限和路径 ### 前端热加载不工作 1. 确认 `npm run dev` 正常运行 2. 检查 `vue.config.js` 配置 3. 查看控制台错误信息 ### 端口冲突 - 后端默认端口:8080 - 前端开发端口:3000 - 如遇冲突,修改相应配置文件 ## 💡 开发技巧 1. **保持两个终端窗口**:一个运行后端,一个运行前端 2. **使用 VS Code 集成终端**:方便同时查看前后端日志 3. **合理使用日志**:热重载时日志会保留,便于调试 4. **测试验证码接口**:修改后端代码后,验证码接口会立即生效 ## 🔄 热加载流程 ``` 修改代码 → 保存文件 → 自动检测 → 重新编译 → 重启服务 → 立即生效 ``` ## 📚 相关文档 - [Air 官方文档](https://github.com/air-verse/air) - [Vue CLI 热重载](https://cli.vuejs.org/guide/cli-service.html#vue-cli-service-serve) - [Electron 开发指南](https://www.electronjs.org/docs/tutorial/development) --- **享受高效的开发体验!** 🎉