返回 Bug 清单
BUG-0385project-07低已修复frontend-logic

async 关键字缺失让邀请接口 fire-and-forget —— 失败无提示且重复 key 警告堆积

发现:2026-10-01验证:2026-10-09置信度:85%

症状

协作空间邀请成员偶发无任何反馈(成功失败都不知道);控制台被重复 key 告警刷屏。

根因

① 未声明 async 的函数里的 await 是语法错误或返回 Promise 被丢弃——错误既不上抛也不提示,调用方以为成功;② 列表 key 用可重复字段(如 index/名称),数据一变就撞 key。

修复方案

1) 事件处理器含 await 必须 async,且 UI 层统一 try/catch 出 toast; 2) 列表 key 用稳定唯一 ID; 3) lint 开启 no-floating-promises(TS)让被丢弃的 Promise 编译期现形。

检测命令

grep -rn 'handle.*=' --include='*.tsx' <src> | 逐个核对含 await 的处理器是否 async;控制台过滤 duplicate key

错误签名

handleInviteMember 函数体含 await 语义但未声明 async;列表渲染 key 重复触发 React 告警

技术信息

来源项目

project-07

标签

async-await, fire-and-forget, react-key, typescript-lint