fix-img

Change-Id: Ida77fc6aed06b28e41e2abcb6ae09d5f63d016f2
diff --git a/src/context/UserContext.js b/src/context/UserContext.js
index a76b638..01f500d 100644
--- a/src/context/UserContext.js
+++ b/src/context/UserContext.js
@@ -1,28 +1,53 @@
 import React, { createContext, useContext, useState, useEffect } from 'react';
 
+const avatarBaseUrl = process.env.REACT_APP_AVATAR_BASE_URL || '';
+
 export const UserContext = createContext();
 
 export const UserProvider = ({ children }) => {
   const [user, setUser] = useState(null);
   const [loading, setLoading] = useState(true);
 
+  // ✅ 标准化用户数据结构
+  const formatUser = (raw) => {
+    if (!raw) return null;
+    return {
+      userId: raw.userId || raw.id || null,
+      username: raw.username || '匿名用户',
+      avatarUrl: raw.avatarUrl ? `${avatarBaseUrl}${raw.avatarUrl}` : null,
+      ...raw, // 保留其它字段(如 email, level 等)
+    };
+  };
+
   useEffect(() => {
     const storedUser = localStorage.getItem('user');
     if (storedUser) {
-      setUser(JSON.parse(storedUser));
+      try {
+        const parsed = JSON.parse(storedUser);
+        setUser(formatUser(parsed));
+      } catch (err) {
+        console.error('本地用户信息解析失败:', err);
+        localStorage.removeItem('user');
+        setUser(null);
+      }
     } else {
       // 设置默认用户
-      const defaultUser = { userId: 1, username: '测试用户' };
+      const defaultUser = {
+        userId: 1,
+        username: '测试用户',
+        avatarUrl: null,
+      };
       localStorage.setItem('user', JSON.stringify(defaultUser));
-      setUser(defaultUser);
+      setUser(formatUser(defaultUser));
     }
     setLoading(false);
   }, []);
 
   const saveUser = (userData) => {
-    if (userData && userData.id) {
-      localStorage.setItem('user', JSON.stringify(userData));
-      setUser(userData);
+    if (userData && (userData.userId || userData.id)) {
+      const formatted = formatUser(userData);
+      localStorage.setItem('user', JSON.stringify(userData)); // 原始数据存储
+      setUser(formatted); // 格式化后使用
     } else {
       console.error('无效的用户数据:', userData);
     }
@@ -46,4 +71,4 @@
     throw new Error('useUser must be used within a UserProvider');
   }
   return context;
-};
\ No newline at end of file
+};