feat: sockt 弹窗功能添加

This commit is contained in:
zdl
2025-10-21 17:50:21 +08:00
parent c93f689954
commit 09c9273190
17 changed files with 3739 additions and 161 deletions

View File

@@ -1,6 +1,79 @@
# 实时消息推送系统使用指南
## 🆕 最新更新 (v2.3.0 - 通知体验优化)
## 🆕 最新更新 (v2.10.0 - 点击加载反馈)
-**按钮加载态**:点击"查看详情"后按钮显示 loading spinner文字变为"跳转中..."(蓝色)
-**防重复点击**加载状态时禁用再次点击cursor 变为 wait避免误操作
-**延迟关闭**:跳转后延迟 300ms 关闭通知,给用户足够的视觉反馈
-**整卡禁用**加载时通知变半透明opacity 0.7禁用所有交互pointerEvents: none
-**流畅体验**:使用 Chakra UI Spinner (size="xs") 匹配图标大小,视觉一致
-**状态一致性**Loading 时 hover 效果禁用,确保用户知道正在跳转
---
### v2.9.0 更新回顾
-**头部简化**:移除 AI 和预测标签,只保留优先级标签(紧急/重要),避免换行拥挤
-**底部补充**AI 和预测标识移到底部元数据区,使用 xs size 小徽章,信息不丢失
-**预测状态合并**:预测徽章与状态提示("详细报告生成中...")合并显示,更紧凑
-**响应式优化**移动端底部只显示时间和操作提示AI/预测标识在小屏及以上显示
-**元数据顺序调整**时间优先然后AI、预测、作者、操作提示信息层次清晰
-**视觉平衡**:头部更简洁清爽,优先级标签更醒目,辅助信息完整保留
---
### v2.8.0 更新回顾
-**ARIA 完全支持**:为所有通知添加完整的 ARIA 属性role、aria-live、aria-atomic、aria-label
-**智能角色分配**:紧急通知使用 role="alert" + aria-live="assertive",其他使用 role="status" + aria-live="polite"
-**键盘导航**:可点击通知支持 Tab 键聚焦Enter/Space 键打开详情
-**屏幕阅读器优化**:自动生成完整描述(类型、优先级、标题、内容、时间、操作提示)
-**焦点管理**添加蓝色聚焦轮廓2px solid blue.500),符合 WCAG 2.1 AA 标准
-**关闭按钮增强**支持键盘操作aria-label 包含通知标题
-**展开/收起按钮**aria-expanded 状态提示,描述性 aria-label
-**容器区域标识**:通知中心使用 role="region",动态更新统计信息
---
### v2.7.0 更新回顾
-**智能动画**:只对新增通知应用动画,已存在通知直接显示
-**移除双层嵌套**:去除 ScaleFade只保留 Slide 动画
-**展开/收起优化**展开15条通知无动画避免卡顿
-**性能提升90%+**动画数量从30个减少到1-2个
-**GPU 加速**:添加 willChange CSS 优化
---
### v2.6.0 更新回顾
-**状态持久化**:展开/收起状态保存到 localStorage刷新页面后保持
-**2分钟自动过期**展开状态2分钟后自动重置为收起避免长期展开
-**跨标签页实时同步**:多个标签页展开/收起状态自动同步
-**智能过期检查**每10秒自动检查过期无需刷新页面
-**优雅降级**localStorage 不可用时仍正常工作
---
### v2.5.0 更新回顾
-**避开设置按钮**桌面端底部偏移112px完全避开右下角设置按钮冲突
-**响应式偏移**移动端保持12px贴近底部桌面端112px留足空间
-**视觉优化**:通知位置更合理,不再遮挡其他固定元素
---
### v2.4.0 更新回顾
-**响应式宽度**:移动端屏宽-32px小屏360px平板380px桌面400px
-**响应式信息密度**移动端精简显示标题1行、内容2行桌面完整显示
-**响应式元数据**:移动端仅显示时间,小屏+状态,平板+作者信息
-**响应式间距**移动端12px边距平板+24px边距
-**完美适配**:在手机、平板、桌面各种设备上都能舒适阅读
---
### v2.3.0 更新回顾
-**按优先级区分自动关闭**紧急通知不自动关闭重要30秒普通15秒
-**简单折叠机制**最多显示3条通知超过显示"还有X条"展开按钮