feat: 完善工作台展示场景 - 新增 Modal/Toast 组件、EmptyState 使用、确认弹窗、筛选分页
- 新增 Modal 确认弹窗组件和 Toast 消息提示组件 - 在 SkillsPage、LogsPage、TasksPage、ProjectsPage 使用 EmptyState - 为删除任务、取消订阅、移除成员、技能订阅添加确认弹窗 - 丰富聊天场景:代码展示、表格数据、多轮对话、错误提示 - 优化 ChatPage 布局,修复对话区域滚动问题 - 为 ProjectsPage 添加筛选卡片和分页组件 - 添加表单校验错误状态展示 - 同步 specs 到主目录
This commit is contained in:
125
README.md
125
README.md
@@ -1,49 +1,5 @@
|
||||
# GrandClaw 原型项目
|
||||
|
||||
> 企业级AI智算平台前端原型,专注于展示页面布局和内容,使用React + Vite构建。
|
||||
|
||||
## 文档编写原则
|
||||
|
||||
本文档遵循以下编写原则,以确保内容的准确性、可维护性和可读性:
|
||||
|
||||
### 内容原则
|
||||
- **准确性优先**:所有技术描述、代码示例、路径配置必须与实际代码保持一致
|
||||
- **简洁明了**:使用清晰简洁的语言,避免冗余描述
|
||||
- **实用导向**:提供开发者实际需要的配置和开发指南
|
||||
|
||||
### 结构原则
|
||||
- **分层组织**:按功能模块和技术领域分层组织内容
|
||||
- **逻辑清晰**:从项目概述 → 技术栈 → 功能 → 开发指南 → 维护的顺序组织
|
||||
- **易于检索**:使用明确的标题层级和目录结构
|
||||
|
||||
### 代码原则
|
||||
- **代码即文档**:代码示例使用实际可运行的代码
|
||||
- **注释克制**:仅在必要时添加注释,代码本身应自解释
|
||||
|
||||
## 文档更新原则
|
||||
|
||||
本文档随项目迭代持续更新,遵循以下更新策略:
|
||||
|
||||
### 更新触发条件
|
||||
- 新增或移除核心功能模块
|
||||
- 更改技术栈或依赖版本
|
||||
- 添加新的页面或路由
|
||||
- 新增通用组件或工具
|
||||
- 重大架构调整
|
||||
|
||||
### 更新内容
|
||||
- **版本对齐**:技术栈版本号必须与 package.json 保持一致
|
||||
- **路径同步**:文件路径必须与实际项目结构一致
|
||||
- **功能同步**:核心功能描述必须覆盖实际实现的所有功能
|
||||
- **示例验证**:代码示例必须经过验证可正常运行
|
||||
|
||||
### 更新记录
|
||||
- 每次重要更新在更新日志中记录
|
||||
- 记录内容包括:日期、更新类型、具体变更
|
||||
- 保持更新日志按时间倒序排列
|
||||
|
||||
---
|
||||
|
||||
## 项目概述
|
||||
|
||||
GrandClaw 是一个企业级AI智能助手平台的前端原型项目,主要用于展示平台的主要页面布局、交互流程和视觉设计。项目采用现代化的前端技术栈,实现了四大核心模块:
|
||||
@@ -301,6 +257,43 @@ import EmptyState from '../components/common/EmptyState.jsx';
|
||||
/>
|
||||
```
|
||||
|
||||
#### Modal 弹窗
|
||||
用于展示确认操作的弹窗组件,支持自定义标题和内容。
|
||||
|
||||
```jsx
|
||||
import Modal from '../components/common/Modal.jsx';
|
||||
|
||||
<Modal
|
||||
visible={showModal}
|
||||
title="确认删除"
|
||||
onConfirm={handleConfirm}
|
||||
onCancel={handleCancel}
|
||||
confirmText="删除"
|
||||
>
|
||||
确定要删除这个任务吗?
|
||||
</Modal>
|
||||
```
|
||||
|
||||
#### Toast 消息提示
|
||||
用于展示操作结果的消息提示组件,支持成功、错误、警告、信息四种类型。
|
||||
|
||||
```jsx
|
||||
import Toast from '../components/common/Toast.jsx';
|
||||
|
||||
<Toast
|
||||
visible={showToast}
|
||||
type="success"
|
||||
message="操作成功"
|
||||
onClose={() => setShowToast(false)}
|
||||
/>
|
||||
```
|
||||
|
||||
**支持的类型:**
|
||||
- `success` - 成功(绿色)
|
||||
- `error` - 错误(红色)
|
||||
- `warning` - 警告(黄色)
|
||||
- `info` - 信息(蓝色)
|
||||
|
||||
#### StatusBadge 状态标签
|
||||
用于显示状态(成功、失败、警告等)的标签组件。
|
||||
|
||||
@@ -629,48 +622,4 @@ export default defineConfig({
|
||||
3. 组件样式添加到 `_components.scss`
|
||||
4. 页面特定样式添加到 `global.scss`
|
||||
|
||||
### 调试技巧
|
||||
1. 使用 `pnpm dev` 启动开发服务器
|
||||
2. 检查浏览器控制台的localStorage操作
|
||||
3. 使用React Developer Tools检查组件状态
|
||||
4. 检查网络面板确认资源加载
|
||||
|
||||
## 更新日志
|
||||
|
||||
### 2026-03-20
|
||||
- 代码架构重构:提取布局组件(SidebarBrand、SidebarUser、SidebarNavItem)
|
||||
- 代码架构重构:创建通用UI组件(EmptyState、StatusBadge、TagInput、SearchBar)
|
||||
- 代码架构重构:新增全局状态管理(UserContext)
|
||||
- 代码架构重构:新增自定义Hooks(usePageState、useNavigation、useLocalStorage)
|
||||
- 代码架构重构:新增统一数据访问层(src/services/api.js)
|
||||
- 代码架构重构:新增常量配置(constants/pages.js、constants/storageKeys.js)
|
||||
- 文档同步:更新开发台子页面列表,补充 NewVersionPage
|
||||
- 文档同步:补充开发台功能描述(上传新版本)
|
||||
|
||||
### 2026-03-19
|
||||
- 完成从静态HTML原型到React项目的重构
|
||||
- 实现四大核心模块:首页、工作台、管理台、开发台
|
||||
- 集成react-icons图标库
|
||||
- 实现SCSS样式模块化
|
||||
- 配置Vite单文件打包
|
||||
- 实现导航状态持久化
|
||||
- 区分主页跳转和刷新浏览器行为
|
||||
|
||||
### 2026-03-19(功能更新)
|
||||
- 新增登录页面,支持验证码防爆破
|
||||
- 工作台定时任务支持查看详情、执行日志
|
||||
- 管理台新增用户/部门/项目管理支持新增表单
|
||||
- 新增ListSelector通用列表选择器组件
|
||||
- 日志查询支持按用户、类型、状态筛选
|
||||
- 用户管理支持管理员/开发者/成员角色区分
|
||||
- 优化页面布局和样式
|
||||
|
||||
## 联系方式
|
||||
|
||||
- 项目原型演示用途
|
||||
- 基于GrandClaw团队设计
|
||||
- 前端技术栈:React + Vite + SCSS
|
||||
|
||||
---
|
||||
|
||||
*最后更新:2026-03-19*
|
||||
|
||||
Reference in New Issue
Block a user