diff --git a/src/views/forum/ForumSectionView.vue b/src/views/forum/ForumSectionView.vue
index 98c9780..3d55929 100644
--- a/src/views/forum/ForumSectionView.vue
+++ b/src/views/forum/ForumSectionView.vue
@@ -1,5 +1,4 @@
 <template>
-  <Navbar />
   <div class="section-page">
     <Navbar />
     <div class="page-container">
@@ -38,90 +37,90 @@
         </div>
       </div>
 
-      <!-- 筛选和搜索 -->
-      <div class="filter-section">
-        <div class="filter-left">
-          <el-input
-            v-model="searchQuery"
-            placeholder="搜索主题..."
-            :prefix-icon="Search"
-            @keyup.enter="handleSearch"
-            clearable
-            style="width: 300px;"
-          />
-          <el-button type="primary" @click="handleSearch">搜索</el-button>
-        </div>
-        
-        <div class="filter-right">
-          <el-select v-model="sortBy" placeholder="排序方式" @change="handleFilter">
-            <el-option label="最新回复" value="last_reply" />
-            <el-option label="发布时间" value="create_time" />
-            <el-option label="回复数量" value="replies" />
-            <el-option label="浏览次数" value="views" />
-          </el-select>
-          
-          <el-select v-model="filterType" placeholder="主题类型" @change="handleFilter">
-            <el-option label="全部主题" value="" />
-            <el-option label="置顶主题" value="pinned" />
-            <el-option label="热门主题" value="hot" />
-            <el-option label="精华主题" value="featured" />
-          </el-select>
-        </div>
-      </div>
+<!--      &lt;!&ndash; 筛选和搜索 &ndash;&gt;-->
+<!--      <div class="filter-section">-->
+<!--        <div class="filter-left">-->
+<!--          <el-input-->
+<!--            v-model="searchQuery"-->
+<!--            placeholder="搜索主题..."-->
+<!--            :prefix-icon="Search"-->
+<!--            @keyup.enter="handleSearch"-->
+<!--            clearable-->
+<!--            style="width: 300px;"-->
+<!--          />-->
+<!--          <el-button type="primary" @click="handleSearch">搜索</el-button>-->
+<!--        </div>-->
+<!--        -->
+<!--        <div class="filter-right">-->
+<!--          <el-select v-model="sortBy" placeholder="排序方式" @change="handleFilter">-->
+<!--            <el-option label="最新回复" value="last_reply" />-->
+<!--            <el-option label="发布时间" value="create_time" />-->
+<!--            <el-option label="回复数量" value="replies" />-->
+<!--            <el-option label="浏览次数" value="views" />-->
+<!--          </el-select>-->
+<!--          -->
+<!--          <el-select v-model="filterType" placeholder="主题类型" @change="handleFilter">-->
+<!--            <el-option label="全部主题" value="" />-->
+<!--            <el-option label="置顶主题" value="pinned" />-->
+<!--            <el-option label="热门主题" value="hot" />-->
+<!--            <el-option label="精华主题" value="featured" />-->
+<!--          </el-select>-->
+<!--        </div>-->
+<!--      </div>-->
 
       <!-- 置顶主题 -->
-      <div v-if="pinnedTopics.length > 0" class="pinned-topics">
-        <h3 class="section-title">置顶主题</h3>
-        <div class="topics-list">
-          <div
-            v-for="topic in pinnedTopics"
-            :key="topic.id"
-            class="topic-item pinned"
-            @click="navigateToTopic(topic.id)"
-          >
-            <div class="topic-status">
-              <el-icon class="pin-icon"><Top /></el-icon>
-            </div>
-            
-            <div class="topic-content">
-              <div class="topic-header">
-                <h4 class="topic-title">{{ topic.title }}</h4>
-                <div class="topic-tags">
-                  <el-tag type="warning" size="small">置顶</el-tag>
-                  <el-tag v-if="topic.hot" type="danger" size="small">热门</el-tag>
-                  <el-tag v-if="topic.featured" type="success" size="small">精华</el-tag>
-                </div>
-              </div>
-              
-              <div class="topic-meta">
-                <div class="author-info">
-                  <el-avatar :size="24">{{ topic.user?.username ? topic.user.username.charAt(0) : 'A' }}</el-avatar>
-                  <span class="author-name">{{ topic.user?.username || '匿名' }}</span>
-                  <span class="create-time">{{ formatTime(topic.createTime) }}</span>
-                </div>
-                
-                <div class="topic-stats">
-                  <span class="stat-item">
-                    <el-icon><View /></el-icon>
-                    {{ topic.views }}
-                  </span>
-                  <span class="stat-item">
-                    <el-icon><Comment /></el-icon>
-                    {{ topic.replies }}
-                  </span>
-                </div>
-              </div>
-            </div>
-            
-            <div class="last-reply">
-              <div v-if="topic.lastReply" class="reply-info">
-                <div class="reply-author">{{ topic.lastReply.author }}</div>
-                <div class="reply-time">{{ formatTime(topic.lastReply.time) }}</div>
-              </div>
-            </div>
-          </div>
-        </div>
-      </div>
+<!--      <div v-if="pinnedTopics.length > 0" class="pinned-topics">-->
+<!--        <h3 class="section-title">置顶主题</h3>-->
+<!--        <div class="topics-list">-->
+<!--          <div-->
+<!--            v-for="topic in pinnedTopics"-->
+<!--            :key="topic.id"-->
+<!--            class="topic-item pinned"-->
+<!--            @click="navigateToTopic(topic.id)"-->
+<!--          >-->
+<!--            <div class="topic-status">-->
+<!--              <el-icon class="pin-icon"><Top /></el-icon>-->
+<!--            </div>-->
+<!--            -->
+<!--            <div class="topic-content">-->
+<!--              <div class="topic-header">-->
+<!--                <h4 class="topic-title">{{ topic.title }}</h4>-->
+<!--                <div class="topic-tags">-->
+<!--                  <el-tag type="warning" size="small">置顶</el-tag>-->
+<!--                  <el-tag v-if="topic.hot" type="danger" size="small">热门</el-tag>-->
+<!--                  <el-tag v-if="topic.featured" type="success" size="small">精华</el-tag>-->
+<!--                </div>-->
+<!--              </div>-->
+<!--              -->
+<!--              <div class="topic-meta">-->
+<!--                <div class="author-info">-->
+<!--                  <el-avatar :size="24">{{ topic.user?.username ? topic.user.username.charAt(0) : 'A' }}</el-avatar>-->
+<!--                  <span class="author-name">{{ topic.user?.username || '匿名' }}</span>-->
+<!--                  <span class="create-time">{{ formatTime(topic.createTime) }}</span>-->
+<!--                </div>-->
+<!--                -->
+<!--                <div class="topic-stats">-->
+<!--                  <span class="stat-item">-->
+<!--                    <el-icon><View /></el-icon>-->
+<!--                    {{ topic.views }}-->
+<!--                  </span>-->
+<!--                  <span class="stat-item">-->
+<!--                    <el-icon><Comment /></el-icon>-->
+<!--                    {{ topic.replies }}-->
+<!--                  </span>-->
+<!--                </div>-->
+<!--              </div>-->
+<!--            </div>-->
+<!--            -->
+<!--            <div class="last-reply">-->
+<!--              <div v-if="topic.lastReply" class="reply-info">-->
+<!--                <div class="reply-author">{{ topic.lastReply.author }}</div>-->
+<!--                <div class="reply-time">{{ formatTime(topic.lastReply.time) }}</div>-->
+<!--              </div>-->
+<!--            </div>-->
+<!--          </div>-->
+<!--        </div>-->
+<!--      </div>-->
 
       <!-- 普通主题列表 -->
       <div class="normal-topics">
@@ -152,9 +151,10 @@
               <div class="topic-header">
                 <h4 class="topic-title">{{ topic.title }}</h4>
                 <div class="topic-tags">
-                  <el-tag v-if="topic.hot" type="danger" size="small">热门</el-tag>
+                  <el-tag v-if="topic.isPinned" type="warning" size="small">置顶</el-tag>
+                  <el-tag v-if="topic.views > 1000" type="danger" size="small">热门</el-tag>
                   <el-tag v-if="topic.featured" type="success" size="small">精华</el-tag>
-                  <el-tag v-if="topic.closed" type="info" size="small">已关闭</el-tag>
+                  <el-tag v-if="topic.isLocked" type="info" size="small">已关闭</el-tag>
                 </div>
               </div>
               
@@ -162,28 +162,27 @@
                 <div class="author-info">
                   <el-avatar :size="24">{{ topic.user?.username ? topic.user.username.charAt(0) : 'A' }}</el-avatar>
                   <span class="author-name">{{ topic.user?.username || '匿名' }}</span>
-                  <span class="create-time">{{ formatTime(topic.createTime) }}</span>
+<!--                  <span class="create-time">{{ formatTime(topic.createdAt) }}</span>-->
                 </div>
                 
-                <div class="topic-stats">
-                  <span class="stat-item">
-                    <el-icon><View /></el-icon>
-                    {{ topic.views }}
-                  </span>
-                  <span class="stat-item">
-                    <el-icon><Comment /></el-icon>
-                    {{ topic.replies }}
-                  </span>
-                </div>
+<!--                <div class="topic-stats">-->
+<!--                  <span class="stat-item">-->
+<!--                    <el-icon><View /></el-icon>-->
+<!--                    {{ topic.views || 0 }}-->
+<!--                  </span>-->
+<!--                  <span class="stat-item">-->
+<!--                    <el-icon><Comment /></el-icon>-->
+<!--                    {{ topic.replies || 0 }}-->
+<!--                  </span>-->
+<!--                </div>-->
               </div>
             </div>
             
             <div class="last-reply">
-              <div v-if="topic.lastReply" class="reply-info">
-                <div class="reply-author">{{ topic.lastReply.author }}</div>
-                <div class="reply-time">{{ formatTime(topic.lastReply.time) }}</div>
+              <div v-if="topic.updatedAt" class="reply-info">
+                <div class="reply-author">最后回复</div>
+                <div class="reply-time">{{ formatTime(topic.updatedAt) }}</div>
               </div>
-              <div v-else class="no-reply">暂无回复</div>
             </div>
           </div>
           
@@ -305,9 +304,11 @@
   Monitor,
   GamePad,
   Bell,
-  QuestionFilled
+  QuestionFilled,
+  Plus
 } from '@element-plus/icons-vue'
 import { getTopicsByForum, createTopic } from '@/api/topic'
+import { getForumById } from '@/api/forum'
 import Navbar from "@/components/Navbar.vue";
 
 export default {
@@ -332,16 +333,7 @@
     const pageSize = ref(20)
     const totalTopics = ref(0)
     
-    const sectionInfo = ref({
-      id: 1,
-      name: '电影讨论',
-      description: '分享和讨论电影资源，交流观影心得',
-      icon: 'Film',
-      color: '#409eff',
-      topics: 3256,
-      replies: 18934,
-      members: 1234
-    })
+    const sectionInfo = ref({})
     
     const newTopic = reactive({
       title: '',
@@ -383,35 +375,31 @@
     onMounted(() => {
       const sectionId = route.params.id
       fetchSectionData(sectionId)
-      fetchTopics()
     })
     
     const fetchSectionData = async (id) => {
       loading.value = true
       try {
-        // 模拟API调用
-        console.log('获取版块数据:', id)
+        console.log('🏁 fetchSectionData 开始，id:', id)
+        const res = await getForumById(id)
+        console.log('📥 getForumById 响应:', res)
         
-        // 根据版块ID设置不同的版块信息
-        const sections = {
-          1: { name: '电影讨论', description: '分享和讨论电影资源，交流观影心得', icon: 'Film', color: '#409eff' },
-          2: { name: '音乐分享', description: '音乐资源分享，音乐制作技术交流', icon: 'Headphones', color: '#67c23a' },
-          3: { name: '软件技术', description: '软件资源分享，技术问题讨论', icon: 'Monitor', color: '#e6a23c' },
-          4: { name: '游戏天地', description: '游戏资源分享，游戏攻略讨论', icon: 'GamePad', color: '#f56c6c' },
-          5: { name: '站务公告', description: '网站公告，规则说明，意见建议', icon: 'Bell', color: '#909399' },
-          6: { name: '新手求助', description: '新手问题解答，使用教程分享', icon: 'QuestionFilled', color: '#606266' }
-        }
-        
-        const sectionData = sections[id] || sections[1]
         sectionInfo.value = {
-          id: parseInt(id),
-          ...sectionData,
-          topics: 0  // 初始化为0，会在fetchTopics中更新为真实数量
+          ...res,
+          icon: getForumIcon(res.name),
+          color: getForumColor(res.name),
+          topics: 0
         }
         
-        totalTopics.value = 156
+        console.log('📋 sectionInfo 设置完成:', sectionInfo.value)
+        console.log('🚀 准备调用 fetchTopics')
         
+        // sectionInfo有数据后再请求主题列表
+        fetchTopics()
+        
+        console.log('✅ fetchTopics 调用完成')
       } catch (error) {
+        console.error('❌ fetchSectionData 错误:', error)
         ElMessage.error('获取版块数据失败')
       } finally {
         loading.value = false
@@ -419,7 +407,31 @@
     }
     
     const formatTime = (timeString) => {
+      // 处理Java LocalDateTime数组格式: [年, 月, 日, 时, 分, 秒, 纳秒]
+      if (Array.isArray(timeString) && timeString.length >= 6) {
+        const [year, month, day, hour, minute, second] = timeString
+        const date = new Date(year, month - 1, day, hour, minute, second) // 月份需要减1
+        const now = new Date()
+        const diff = now - date
+        const hours = Math.floor(diff / (1000 * 60 * 60))
+        
+        if (hours < 1) return '刚刚'
+        if (hours < 24) return `${hours}小时前`
+        const days = Math.floor(hours / 24)
+        if (days < 7) return `${days}天前`
+        
+        return date.toLocaleDateString('zh-CN', {
+          month: '2-digit',
+          day: '2-digit',
+          hour: '2-digit',
+          minute: '2-digit'
+        })
+      }
+      
+      // 处理普通字符串格式
       const date = new Date(timeString)
+      if (isNaN(date.getTime())) return '时间未知'
+      
       const now = new Date()
       const diff = now - date
       const hours = Math.floor(diff / (1000 * 60 * 60))
@@ -454,13 +466,29 @@
     const fetchTopics = async () => {
       loading.value = true
       try {
+        // 调试信息：确认方法被调用和参数值
+        console.log('🔍 fetchTopics 被调用，sectionInfo.value:', sectionInfo.value)
+        console.log('🔍 sectionInfo.value.id:', sectionInfo.value.id)
+        
+        if (!sectionInfo.value.id) {
+          console.error('❌ sectionInfo.value.id 为空，无法请求主题列表')
+          return
+        }
+        
         // 调用后端API获取主题列表
+        console.log('🚀 正在请求主题列表，forumId:', sectionInfo.value.id)
         const res = await getTopicsByForum(sectionInfo.value.id)
+        console.log('✅ 主题列表响应:', res)
+        
         topics.value = res.data || res // 兼容不同返回结构
         totalTopics.value = topics.value.length
         // 同时更新顶部显示的主题数量
         sectionInfo.value.topics = topics.value.length
+        
+        console.log('✅ topics.value:', topics.value)
+        console.log('✅ totalTopics.value:', totalTopics.value)
       } catch (error) {
+        console.error('❌ fetchTopics 错误:', error)
         ElMessage.error('获取主题列表失败')
       } finally {
         loading.value = false
@@ -567,6 +595,30 @@
       newTopic.options = []
     }
     
+    // icon和color映射函数，和首页保持一致
+    const getForumIcon = (name) => {
+      const iconMap = {
+        '电影讨论': 'Film',
+        '音乐分享': 'Headphones',
+        '软件技术': 'Monitor',
+        '游戏天地': 'GamePad',
+        '站务公告': 'Bell',
+        '新手求助': 'QuestionFilled'
+      }
+      return iconMap[name] || 'ChatLineRound'
+    }
+    const getForumColor = (name) => {
+      const colorMap = {
+        '电影讨论': '#409eff',
+        '音乐分享': '#67c23a',
+        '软件技术': '#e6a23c',
+        '游戏天地': '#f56c6c',
+        '站务公告': '#909399',
+        '新手求助': '#606266'
+      }
+      return colorMap[name] || '#409eff'
+    }
+    
     return {
       loading,
       showNewTopicDialog,
@@ -610,7 +662,8 @@
       Monitor,
       GamePad,
       Bell,
-      QuestionFilled
+      QuestionFilled,
+      Plus
     }
   }
 }
diff --git a/src/views/forum/ForumTopicView.vue b/src/views/forum/ForumTopicView.vue
index b3fe08b..170e313 100644
--- a/src/views/forum/ForumTopicView.vue
+++ b/src/views/forum/ForumTopicView.vue
@@ -1,5 +1,4 @@
 <template>
-  <Navbar />
   <div class="topic-detail-page">
     <Navbar />
     <div class="page-container">
diff --git a/src/views/forum/ForumView.vue b/src/views/forum/ForumView.vue
index cd7e7bf..2010ce7 100644
--- a/src/views/forum/ForumView.vue
+++ b/src/views/forum/ForumView.vue
@@ -1,18 +1,17 @@
 <template>
-  <Navbar />
   <div class="forum-page">
-    
+    <Navbar />
     <div class="page-container">
       <!-- 论坛头部 -->
       <div class="forum-header">
         <div class="header-content">
           <h1>社区论坛</h1>
           <p class="header-description">与其他用户交流讨论，分享经验心得</p>
-          <div class="header-actions">
-            <el-button type="primary" :icon="Edit" @click="showNewTopicDialog = true">
-              发布新帖
-            </el-button>
-          </div>
+<!--          <div class="header-actions">-->
+<!--            <el-button type="primary" :icon="Edit" @click="showNewTopicDialog = true">-->
+<!--              发布新帖-->
+<!--            </el-button>-->
+<!--          </div>-->
         </div>
       </div>
 
@@ -26,13 +25,13 @@
               <p>主题总数</p>
             </div>
           </div>
-          <div class="stat-item">
-            <el-icon size="32" color="#67c23a"><Comment /></el-icon>
-            <div class="stat-info">
-              <h3>{{ forumStats.totalReplies }}</h3>
-              <p>回复总数</p>
-            </div>
-          </div>
+<!--          <div class="stat-item">-->
+<!--            <el-icon size="32" color="#67c23a"><Comment /></el-icon>-->
+<!--            <div class="stat-info">-->
+<!--              <h3>{{ forumStats.totalReplies }}</h3>-->
+<!--              <p>回复总数</p>-->
+<!--            </div>-->
+<!--          </div>-->
           <div class="stat-item">
             <el-icon size="32" color="#e6a23c"><User /></el-icon>
             <div class="stat-info">
@@ -40,13 +39,13 @@
               <p>活跃用户</p>
             </div>
           </div>
-          <div class="stat-item">
-            <el-icon size="32" color="#f56c6c"><View /></el-icon>
-            <div class="stat-info">
-              <h3>{{ forumStats.todayPosts }}</h3>
-              <p>今日发帖</p>
-            </div>
-          </div>
+<!--          <div class="stat-item">-->
+<!--            <el-icon size="32" color="#f56c6c"><View /></el-icon>-->
+<!--            <div class="stat-info">-->
+<!--              <h3>{{ forumStats.todayPosts }}</h3>-->
+<!--              <p>今日发帖</p>-->
+<!--            </div>-->
+<!--          </div>-->
         </div>
       </div>
 
@@ -90,9 +89,9 @@
       <div class="hot-topics">
         <div class="section-header">
           <h2 class="section-title">热门主题</h2>
-          <el-button type="primary" text @click="$router.push('/forum/topics')">
-            查看全部 <el-icon><ArrowRight /></el-icon>
-          </el-button>
+<!--          <el-button type="primary" text @click="$router.push('/forum/topics')">-->
+<!--            查看全部 <el-icon><ArrowRight /></el-icon>-->
+<!--          </el-button>-->
         </div>
         <div class="topics-list">
           <div
@@ -120,17 +119,17 @@
                   <el-avatar :size="24">{{ topic.author.charAt(0) }}</el-avatar>
                   <span class="author-name">{{ topic.author }}</span>
                 </div>
-                <div class="topic-stats">
-                  <span class="stat-item">
-                    <el-icon><View /></el-icon>
-                    {{ topic.views }}
-                  </span>
-                  <span class="stat-item">
-                    <el-icon><Comment /></el-icon>
-                    {{ topic.replies }}
-                  </span>
-                  <span class="time">{{ formatTime(topic.lastReply) }}</span>
-                </div>
+<!--                <div class="topic-stats">-->
+<!--                  <span class="stat-item">-->
+<!--                    <el-icon><View /></el-icon>-->
+<!--                    {{ topic.views }}-->
+<!--                  </span>-->
+<!--                  <span class="stat-item">-->
+<!--                    <el-icon><Comment /></el-icon>-->
+<!--                    {{ topic.replies }}-->
+<!--                  </span>-->
+<!--&lt;!&ndash;                  <span class="time">{{ formatTime(topic.lastReply) }}</span>&ndash;&gt;-->
+<!--                </div>-->
               </div>
             </div>
             <div class="topic-status">
@@ -141,31 +140,31 @@
         </div>
       </div>
 
-      <!-- 最新回复 -->
-      <div class="recent-replies">
-        <h2 class="section-title">最新回复</h2>
-        <div class="replies-list">
-          <div
-            v-for="reply in recentReplies"
-            :key="reply.id"
-            class="reply-item"
-            @click="navigateToTopic(reply.topicId)"
-          >
-            <div class="reply-avatar">
-              <el-avatar :size="40">{{ reply.author.charAt(0) }}</el-avatar>
-            </div>
-            <div class="reply-content">
-              <div class="reply-header">
-                <span class="reply-author">{{ reply.author }}</span>
-                <span class="reply-action">回复了主题</span>
-                <span class="topic-title">{{ reply.topicTitle }}</span>
-              </div>
-              <div class="reply-text">{{ reply.content }}</div>
-              <div class="reply-time">{{ formatTime(reply.time) }}</div>
-            </div>
-          </div>
-        </div>
-      </div>
+<!--      &lt;!&ndash; 最新回复 &ndash;&gt;-->
+<!--      <div class="recent-replies">-->
+<!--        <h2 class="section-title">最新回复</h2>-->
+<!--        <div class="replies-list">-->
+<!--          <div-->
+<!--            v-for="reply in recentReplies"-->
+<!--            :key="reply.id"-->
+<!--            class="reply-item"-->
+<!--            @click="navigateToTopic(reply.topicId)"-->
+<!--          >-->
+<!--            <div class="reply-avatar">-->
+<!--              <el-avatar :size="40">{{ reply.author.charAt(0) }}</el-avatar>-->
+<!--            </div>-->
+<!--            <div class="reply-content">-->
+<!--              <div class="reply-header">-->
+<!--                <span class="reply-author">{{ reply.author }}</span>-->
+<!--                <span class="reply-action">回复了主题</span>-->
+<!--                <span class="topic-title">{{ reply.topicTitle }}</span>-->
+<!--              </div>-->
+<!--              <div class="reply-text">{{ reply.content }}</div>-->
+<!--              <div class="reply-time">{{ formatTime(reply.time) }}</div>-->
+<!--            </div>-->
+<!--          </div>-->
+<!--        </div>-->
+<!--      </div>-->
     </div>
 
     <!-- 发布新帖对话框 -->
@@ -256,7 +255,7 @@
 import { ref, reactive, onMounted, nextTick } from 'vue'
 import { useRouter } from 'vue-router'
 import { ElMessage, ElMessageBox } from 'element-plus'
-import { 
+import {
   Edit,
   ChatDotRound,
   Comment,
diff --git a/src/views/forum/TopicView.vue b/src/views/forum/TopicView.vue
index 0374dac..f88d0de 100644
--- a/src/views/forum/TopicView.vue
+++ b/src/views/forum/TopicView.vue
@@ -1,5 +1,4 @@
 <template>
-  <Navbar />
   <div class="topic-page">
     <Navbar />
     <div class="page-container">
@@ -13,43 +12,43 @@
                 <el-avatar :size="24">{{ topic.user?.username ? topic.user.username.charAt(0) : 'A' }}</el-avatar>
                 <span class="author-name">{{ topic.user?.username || '匿名' }}</span>
               </span>
-              <span class="time">{{ formatTime(topic.createTime) }}</span>
+<!--              <span class="time">{{ formatTime(topic.createTime) }}</span>-->
               <span class="views">
                 <el-icon><View /></el-icon>
                 {{ topic.views }}
               </span>
-              <el-button
-                :icon="isSubscribed ? StarFilled : Star"
-                :type="isSubscribed ? 'warning' : 'default'"
-                @click="handleSubscribe"
-              >
-                {{ isSubscribed ? '已订阅' : '订阅' }}
-              </el-button>
+<!--              <el-button-->
+<!--                :icon="isSubscribed ? StarFilled : Star"-->
+<!--                :type="isSubscribed ? 'warning' : 'default'"-->
+<!--                @click="handleSubscribe"-->
+<!--              >-->
+<!--                {{ isSubscribed ? '已订阅' : '订阅' }}-->
+<!--              </el-button>-->
             </div>
           </div>
-          <div class="topic-actions" v-if="isAuthor">
-            <el-button type="primary" @click="showEditDialog = true">编辑</el-button>
-            <el-button type="danger" @click="handleDelete">删除</el-button>
-          </div>
+<!--          <div class="topic-actions" v-if="isAuthor">-->
+<!--            <el-button type="primary" @click="showEditDialog = true">编辑</el-button>-->
+<!--            <el-button type="danger" @click="handleDelete">删除</el-button>-->
+<!--          </div>-->
         </div>
       </div>
 
-      <!-- 话题内容 -->
-      <div class="topic-content">
-        <div class="content-card">
-          <div class="content-body" v-html="topic.content"></div>
-          <div class="content-tags">
-            <el-tag
-              v-for="tag in topic.tags"
-              :key="tag.id"
-              :color="tag.color"
-              effect="light"
-            >
-              {{ tag.name }}
-            </el-tag>
-          </div>
-        </div>
-      </div>
+<!--      &lt;!&ndash; 话题内容 &ndash;&gt;-->
+<!--      <div class="topic-content">-->
+<!--        <div class="content-card">-->
+<!--          <div class="content-body" v-html="topic.content"></div>-->
+<!--          <div class="content-tags">-->
+<!--            <el-tag-->
+<!--              v-for="tag in topic.tags"-->
+<!--              :key="tag.id"-->
+<!--              :color="tag.color"-->
+<!--              effect="light"-->
+<!--            >-->
+<!--              {{ tag.name }}-->
+<!--            </el-tag>-->
+<!--          </div>-->
+<!--        </div>-->
+<!--      </div>-->
 
 
 
