diff --git a/apps/desktop/src/pages/Admin.tsx b/apps/desktop/src/pages/Admin.tsx index 9b8823e8..613fa11b 100644 --- a/apps/desktop/src/pages/Admin.tsx +++ b/apps/desktop/src/pages/Admin.tsx @@ -4,6 +4,27 @@ import { Routes, Route, Link, useLocation } from 'react-router-dom'; import { getApiClient, User, EbookSource, Book } from '@bookdock/api-client'; import { getCoverImageUrl } from '../utils/network'; import { Button, Card, CardHeader, CardTitle, CardContent, Input } from '@bookdock/ui'; + +function BookCover({ book, className = "" }: { book: Book; className?: string }) { + const [coverError, setCoverError] = useState(false); + const coverSrc = getCoverImageUrl(book.coverUrl); + return ( +
{book.title}
diff --git a/apps/desktop/src/pages/BookDetail.tsx b/apps/desktop/src/pages/BookDetail.tsx index 87d986d4..03dd2348 100644 --- a/apps/desktop/src/pages/BookDetail.tsx +++ b/apps/desktop/src/pages/BookDetail.tsx @@ -17,6 +17,29 @@ import { useCallback, useEffect, useMemo, useState } from "react"; import { useNavigate, useParams } from "react-router-dom"; import { getCoverImageUrl } from "../utils/network"; +function BookCover({ book, className = "" }: { book: Book; className?: string }) { + const [coverError, setCoverError] = useState(false); + const coverSrc = getCoverImageUrl(book.coverUrl); + return ( ++ {book.author || "未知作者"} +
+- {book.author || "未知作者"} -
-{book.title}
-{book.author || "未知作者"}
+ function BookCard({ book }: { book: Book }) { + const [coverError, setCoverError] = useState(false); + const coverSrc = getCoverImageUrl(book.coverUrl); + return ( +{book.title}
+{book.author || "未知作者"}
+暂无在读书籍
) : ( - inProgressBooks.map(renderBookCard) + inProgressBooks.map((book) =>暂无收藏
) : ( - favorites.map(renderBookCard) + favorites.map((book) =>暂无下载
) : ( - downloadedBooks.map((b) => renderBookCard(b as unknown as Book)) + downloadedBooks.map((b) =>{book.title}
@@ -189,23 +198,7 @@ export default function Recommend() { className="cursor-pointer" onClick={() => handleBookSelect(book)} > -{book.title}
@@ -233,23 +226,7 @@ export default function Recommend() { className="cursor-pointer" onClick={() => handleBookSelect(book)} > -{book.title}