fix: 头像上传后前端不显示真头像 (row29 续)
真因:上传成功且 setUser 写入了 avatar_url,但前端任何头像位置都没渲染 avatar_url, 只显示姓氏首字占位 → 看着像「没更新」。根因:User 类型里压根没暴露 avatar_url 字段。 修:User 类型补 avatar_url;侧栏 .user、账户菜单 .shell-account-head、设置页 av-big 三处头像改为「有 avatar_url 显 <img>,空则回退首字」;.av/.av-big 加 overflow:hidden + img 铺满规则。 后端上传 200 + 直链公读已实测正常,此为纯前端显示修复。 Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
This commit is contained in:
@@ -167,7 +167,7 @@ function AccountMenu({ anchorRect, onClose, navigate, logout, user, team, canMan
|
||||
style={{ left: pos.left, top: pos.top }}
|
||||
>
|
||||
<div className="shell-account-head">
|
||||
<span className="av">{avatar}</span>
|
||||
<span className="av">{user.avatar_url ? <img src={user.avatar_url} alt="头像" /> : avatar}</span>
|
||||
<span>
|
||||
<span className="nm">{team?.name || user.username}</span>
|
||||
<span className="mail">{user.username}</span>
|
||||
@@ -374,7 +374,7 @@ export function Sidebar({ page, navigate, user, team, canManageBilling = true, p
|
||||
onClick={toggleAccountMenu}
|
||||
onKeyDown={(event) => { if (event.key === "Enter" || event.key === " ") { event.preventDefault(); toggleAccountMenu(event as unknown as ReactMouseEvent<HTMLElement>); } }}
|
||||
>
|
||||
<div className="av">{avatar}</div>
|
||||
<div className="av">{user.avatar_url ? <img src={user.avatar_url} alt="头像" /> : avatar}</div>
|
||||
<div className="em">{team?.name || user.username}</div>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
Reference in New Issue
Block a user