Skip to content

Commit 0e93cf4

Browse files
committed
Fix News Rendering data
1 parent 7c4206e commit 0e93cf4

File tree

1 file changed

+8
-25
lines changed

1 file changed

+8
-25
lines changed

src/pages/News/NewsDetailPage.tsx

Lines changed: 8 additions & 25 deletions
Original file line numberDiff line numberDiff line change
@@ -3,13 +3,14 @@ import { useParams, useNavigate } from 'react-router-dom';
33
import { renderMarkdown } from '@/utils/mdparser-utils';
44
import { getPostBySlug, Post } from '@/utils/posts-utils';
55
import { motion } from 'framer-motion';
6+
import Header from '@/sections/Header';
7+
import Footer from '@/sections/Footer';
68

79
const NewsDetailPage: React.FC = () => {
810
const { slug } = useParams<{ slug: string }>();
911
const navigate = useNavigate();
1012
const [post, setPost] = useState<Post | null>(null);
1113
const [isLoading, setIsLoading] = useState<boolean>(true);
12-
const [readingProgress, setReadingProgress] = useState<number>(0);
1314
const contentRef = useRef<HTMLDivElement>(null);
1415
const [modalImage, setModalImage] = useState<{
1516
src: string;
@@ -33,19 +34,6 @@ const NewsDetailPage: React.FC = () => {
3334
};
3435

3536
loadPost();
36-
37-
// Calculate reading progress
38-
const handleScroll = () => {
39-
const totalHeight =
40-
document.documentElement.scrollHeight -
41-
document.documentElement.clientHeight;
42-
const scrollPosition = document.documentElement.scrollTop;
43-
const progress = (scrollPosition / totalHeight) * 100;
44-
setReadingProgress(progress);
45-
};
46-
47-
window.addEventListener('scroll', handleScroll);
48-
return () => window.removeEventListener('scroll', handleScroll);
4937
}, [slug]);
5038

5139
useEffect(() => {
@@ -113,15 +101,8 @@ const NewsDetailPage: React.FC = () => {
113101

114102
return (
115103
<>
116-
<div className="container mx-auto px-4 py-8 max-w-4xl bg-white">
117-
{/* Reading Progress Bar */}
118-
<div className="fixed top-0 left-0 w-full h-1 z-50">
119-
<div
120-
className="h-full bg-blue-600"
121-
style={{ width: `${readingProgress}%` }}
122-
></div>
123-
</div>
124-
104+
<Header />
105+
<div className="container mx-auto px-4 py-8 max-w-4xl bg-white mt-10">
125106
{/* Back button */}
126107
<motion.button
127108
onClick={handleGoBack}
@@ -221,13 +202,14 @@ const NewsDetailPage: React.FC = () => {
221202
</motion.div>
222203
)}
223204

224-
{/* Article Content */}
205+
{/* Article Content - Updated with key for proper re-rendering */}
225206
<motion.div
226207
ref={contentRef}
227-
className="mb-12"
208+
className="mb-12 prose prose-lg max-w-none"
228209
initial={{ opacity: 0 }}
229210
animate={{ opacity: 1 }}
230211
transition={{ duration: 0.5 }}
212+
key={slug} // This ensures re-rendering when the slug changes
231213
dangerouslySetInnerHTML={{ __html: renderMarkdown(post.content) }}
232214
/>
233215

@@ -328,6 +310,7 @@ const NewsDetailPage: React.FC = () => {
328310
</div>
329311
</motion.div>
330312
)}
313+
<Footer />
331314
</>
332315
);
333316
};

0 commit comments

Comments
 (0)