更新数据库结构,向章节表添加 hot_score 字段以修复前端保存章节时的 1054 错误。同时,实施 Toast 通知系统,替换全系统的 alert 提示,提升用户体验。更新相关文档以反映变更流程与最佳实践。

This commit is contained in:
Alex-larget
2026-03-10 18:11:06 +08:00
parent aebb533507
commit 3b942fd7a4
16 changed files with 1028 additions and 785 deletions

View File

@@ -57,7 +57,7 @@ description: Soul 创业派对管理端开发规范。在 soul-admin/ 下编辑
**可选**:导出 CSV、列头排序、批量操作。
**禁止**:不得用原生 `alert`加载失败提示;不得调用 `/api/miniprogram/*`
**禁止**:不得用原生 `alert`任何提示(包括成功、失败、验证);不得调用 `/api/miniprogram/*`
**检查清单**分页、搜索防抖、刷新、loading、空状态、错误条、仅 admin/db 路径。详见 `开发文档/列表标准与角色分工.md`
@@ -65,7 +65,41 @@ description: Soul 创业派对管理端开发规范。在 soul-admin/ 下编辑
**口诀**:外边包 div/view内部 input width 100%。设置 input 的 padding、背景、边框时用 div 包裹 inputpadding 写在容器上input 仅做文字样式(`width: 100%`)。禁止在 input 自身上设 padding可避免光标截断、布局异常。React`<div className="form-input"><input className="form-input-inner" ... /></div>`
### 4.2 表单弹窗与「可选择+可手动填写」(吸收 SetVipModal 经验
### 4.2 用户操作反馈:统一使用 Toast禁止 alert
**规则**:管理端所有操作反馈(保存成功、操作失败、表单验证提示等)**必须使用 `@/utils/toast`**,严禁使用原生 `window.alert()`
```typescript
import toast from '@/utils/toast'
// ✅ 正确
toast.success('已保存')
toast.success(`章节「${title}」创建成功`)
toast.error('保存失败: ' + (res?.error || '未知错误'))
toast.error('请填写章节ID和标题') // 表单验证也用 error
toast.info('暂无数据可导出') // 中性说明用 info
// ❌ 错误
alert('已保存')
alert('保存失败')
```
**类型语义**
| 方法 | 使用场景 | 颜色 |
|------|---------|------|
| `toast.success()` | 操作成功、保存成功、创建/删除成功 | 绿色 |
| `toast.error()` | 接口报错、表单验证不通过、操作失败 | 红色 |
| `toast.info()` | 中性提示(无数据、当前状态说明) | 蓝色 |
**注意**
- `confirm()` 仍可用于删除等破坏性操作的二次确认
- toast 自动 3 秒消失,不阻断流程;若需用户强制确认才能继续,使用 `confirm()`
- 新增页面/组件时,**不得引入新的 `alert()`**
> 来源2026-03-10 全系统 alert → toast 改造18 文件约 90 处)
### 4.4 表单弹窗与「可选择+可手动填写」(吸收 SetVipModal 经验)
当表单需支持「从预设选项选择」或「手动填写自定义值」时: