问题描述
当团队包含 1 名 Leader + 9 名成员(共 10 人)时,团队详情页(/enterprise/teams/{teamId})的「成员管理」区域只显示约 7 名成员,其余成员不可见,容易让用户误以为成员数据丢失。
复现步骤
在「我的团队」创建一个团队,添加 1 名 Leader + 9 名成员
打开团队详情页 /enterprise/teams/{teamId}
观察「成员管理」区:仅能看到 Leader 及部分成员卡片,最左侧的成员(如「产品经理」)一开始就在可视区之外
实际行为
后端 API(GET /api/enterprise/teams/{teamId}?tenant_id=...)正确返回全部 10 名成员
前端 DOM 也完整渲染了全部 10 张成员卡片
但成员卡片容器的横向滚动初始位置已经滚到最右端(scrollLeft ≈ scrollWidth - clientWidth),最左侧的卡片在页面加载时即处于视口外
容器使用 overflow-x-auto,滚动条不显眼且无任何溢出提示,用户不知道可以横向滚动
预期行为
页面加载时「成员管理」区应从最左侧(第一位成员)开始展示,用户无需先向左滚动
当成员数量超出容器宽度时,应有明确的视觉提示(如边缘渐变遮罩、常显滚动条或「左右滑动查看更多」提示),避免成员看似缺失
环境
版本:v0.4.0 引入 teams 功能之后的版本(当前 main 最新提交 008fff3)
浏览器:实测 Chrome(1440px 视口,窗口更窄时可见成员更少)
定位线索
frontend-enterprise/src/pages/TeamDetailPage.tsx 约 805-836 行:
Leader 卡片单独渲染在上方(正常)
其余成员渲染在
横向滚动容器中
成员卡片固定宽度 w-[156px] shrink-0,9 张卡片内容总宽约 1002px,而容器可显示宽度受页面布局限制(实测仅约 505px)
修复建议
初始滚动位置归零:容器加载后设置 scrollLeft = 0;或将 justify-center 改为在溢出时从 flex-start 对齐,避免内容居中导致初始滚动偏移到最右端
增加溢出视觉提示:成员卡行边缘加渐变遮罩,或让横向滚动条常显,提示可滚动
(可选)改为自动换行:成员数量在 10 人量级时,可将 overflow-x-auto 改为 flex-wrap,让全部成员卡片完整可见,最符合「成员管理」场景
问题描述
当团队包含 1 名 Leader + 9 名成员(共 10 人)时,团队详情页(/enterprise/teams/{teamId})的「成员管理」区域只显示约 7 名成员,其余成员不可见,容易让用户误以为成员数据丢失。
复现步骤
在「我的团队」创建一个团队,添加 1 名 Leader + 9 名成员
打开团队详情页 /enterprise/teams/{teamId}
观察「成员管理」区:仅能看到 Leader 及部分成员卡片,最左侧的成员(如「产品经理」)一开始就在可视区之外
实际行为
后端 API(GET /api/enterprise/teams/{teamId}?tenant_id=...)正确返回全部 10 名成员
前端 DOM 也完整渲染了全部 10 张成员卡片
但成员卡片容器的横向滚动初始位置已经滚到最右端(scrollLeft ≈ scrollWidth - clientWidth),最左侧的卡片在页面加载时即处于视口外
容器使用 overflow-x-auto,滚动条不显眼且无任何溢出提示,用户不知道可以横向滚动
预期行为
页面加载时「成员管理」区应从最左侧(第一位成员)开始展示,用户无需先向左滚动
当成员数量超出容器宽度时,应有明确的视觉提示(如边缘渐变遮罩、常显滚动条或「左右滑动查看更多」提示),避免成员看似缺失
环境
版本:v0.4.0 引入 teams 功能之后的版本(当前 main 最新提交 008fff3)
浏览器:实测 Chrome(1440px 视口,窗口更窄时可见成员更少)
定位线索
frontend-enterprise/src/pages/TeamDetailPage.tsx 约 805-836 行:
Leader 卡片单独渲染在上方(正常)
其余成员渲染在
成员卡片固定宽度 w-[156px] shrink-0,9 张卡片内容总宽约 1002px,而容器可显示宽度受页面布局限制(实测仅约 505px)
修复建议
初始滚动位置归零:容器加载后设置 scrollLeft = 0;或将 justify-center 改为在溢出时从 flex-start 对齐,避免内容居中导致初始滚动偏移到最右端
增加溢出视觉提示:成员卡行边缘加渐变遮罩,或让横向滚动条常显,提示可滚动
(可选)改为自动换行:成员数量在 10 人量级时,可将 overflow-x-auto 改为 flex-wrap,让全部成员卡片完整可见,最符合「成员管理」场景