数据结构优化
This commit is contained in:
@@ -73,7 +73,7 @@
|
||||
<!-- Error state -->
|
||||
<div v-else-if="error" class="text-center text-red-500 py-20">
|
||||
<p class="mb-4">{{ error }}</p>
|
||||
<button @click="fetchBlogPosts" class="px-4 py-2 bg-art-accent text-white rounded hover:bg-opacity-80 transition-colors">
|
||||
<button @click="() => fetchBlogPosts(true)" class="px-4 py-2 bg-art-accent text-white rounded hover:bg-opacity-80 transition-colors">
|
||||
重试
|
||||
</button>
|
||||
</div>
|
||||
|
||||
@@ -150,8 +150,10 @@ const fetchHomeData = async () => {
|
||||
latestWork.value = works[0]
|
||||
}
|
||||
|
||||
if (posts && posts.length > 0) {
|
||||
featuredPost.value = posts[0]
|
||||
// fetchPosts 现在返回 PaginationResponse<Post>,需要取 .list
|
||||
const postsList = 'list' in posts ? posts.list : []
|
||||
if (postsList && postsList.length > 0) {
|
||||
featuredPost.value = postsList[0]
|
||||
}
|
||||
} catch (err) {
|
||||
console.error('Error fetching home data:', err)
|
||||
|
||||
@@ -187,8 +187,9 @@ const handleCancel = () => {
|
||||
|
||||
const loadPosts = async () => {
|
||||
try {
|
||||
const posts = await fetchPosts()
|
||||
allPosts.value = posts
|
||||
const response = await fetchPosts()
|
||||
// fetchPosts 现在返回 PaginationResponse<Post>,需要取 .list
|
||||
allPosts.value = 'list' in response ? response.list : []
|
||||
} catch (error) {
|
||||
console.error('Failed to load posts:', error)
|
||||
}
|
||||
|
||||
@@ -183,7 +183,7 @@
|
||||
|
||||
<script setup lang="ts">
|
||||
import { ref, onMounted, computed } from 'vue'
|
||||
import { getAdminPosts, deletePost as deletePostApi, Post, togglePostStatus, PaginationResponse } from '../../services/api'
|
||||
import { getAdminPosts, deletePost as deletePostApi, Post, togglePostStatus } from '../../services/api'
|
||||
import { useToast } from '../../composables/useToast'
|
||||
import PostRelationModal from '../../components/admin/PostRelationModal.vue'
|
||||
import AccessLogModal from '../../components/admin/AccessLogModal.vue'
|
||||
|
||||
@@ -117,7 +117,9 @@ const loadData = async () => {
|
||||
|
||||
stats.value = statsData
|
||||
operationLogs.value = logsData.list
|
||||
recentPosts.value = postsData.slice(0, 5)
|
||||
// fetchPosts 现在返回 PaginationResponse<Post>,需要取 .list
|
||||
const postsList = 'list' in postsData ? postsData.list : []
|
||||
recentPosts.value = postsList.slice(0, 5)
|
||||
|
||||
} catch (error) {
|
||||
console.error(error)
|
||||
|
||||
Reference in New Issue
Block a user