diff --git a/Merge/front/src/components/HomeFeed.jsx b/Merge/front/src/components/HomeFeed.jsx
index b959fd9..1b9035b 100644
--- a/Merge/front/src/components/HomeFeed.jsx
+++ b/Merge/front/src/components/HomeFeed.jsx
@@ -218,7 +218,7 @@
       await fetchDeepRecommend()
     }
     setLoading(false)
-  }, [recMode, fetchTagRecommend, fetchCFRecommend, fetchDeepRecommend])
+  }, [recMode, recCFNum]) // 移除函数依赖，只保留基本值依赖
 
   // 拉取所有涉及用户的昵称
   const fetchUserNames = async (userIds) => {
@@ -285,13 +285,14 @@
     } else {
       loadPosts()
     }
-  }, [useSearchRecommend, fetchUserTagsAndRecommend])
+  }, [useSearchRecommend]) // 只依赖 useSearchRecommend
+
+  // 单独处理推荐模式变化
   useEffect(() => {
     if (useSearchRecommend) {
       fetchUserTagsAndRecommend()
     }
-    // eslint-disable-next-line
-  }, [recMode, fetchUserTagsAndRecommend])
+  }, [recMode, recCFNum, useSearchRecommend]) // 添加 recCFNum 依赖
 
   // 根据模式选择不同的加载方式
   const handleSearch = e => {
diff --git a/Merge/front/src/components/UserProfile.jsx b/Merge/front/src/components/UserProfile.jsx
index 2e54fac..604d83c 100644
--- a/Merge/front/src/components/UserProfile.jsx
+++ b/Merge/front/src/components/UserProfile.jsx
@@ -445,9 +445,15 @@
   const handleMenuClose = () => setAnchorEl(null);
   const handleLogout = () => {
     handleMenuClose();
-    // 清理本地存储
+    // 清理本地存储中的token和用户信息
+    localStorage.removeItem('token');
+    localStorage.removeItem('user');
+    localStorage.removeItem('userId');
     localStorage.clear();
-    // 在此处添加退出登录逻辑，比如清理本地存储并跳转
+    
+    showSnackbar('已成功注销', 'success');
+    
+    // 跳转到首页
     navigate('/login');
   };
 
@@ -579,7 +585,21 @@
                   </Box>
                   
                   <Box sx={{ mt: isMobile ? 2 : 0, alignSelf: 'flex-start' }}>
-                    {!isOwnProfile && currentUser && (
+                    {isOwnProfile ? (
+                      // 如果是自己的个人资料页面，显示注销按钮
+                      <Button
+                        variant="outlined"
+                        color="error"
+                        onClick={handleLogout}
+                        sx={{ 
+                          borderRadius: 20, 
+                          px: 3, 
+                          fontWeight: 'bold' 
+                        }}
+                      >
+                        注销
+                      </Button>
+                    ) : currentUser && (
                       <>
                         <Button
                           variant={profileUser.is_following ? "outlined" : "contained"}
