feat: 添加文章和服务详情页组件

- ArticleDetailPage(文章详情、评论、点赞)
- ServiceDetailPage(服务详情、评分、评论、点赞)
- 更新 App.js 路由配置
- 集成 ArticleStore 和 ServiceStore
This commit is contained in:
mashen
2026-04-09 13:48:21 +00:00
parent 7050f15f0a
commit 8d4eda17e0
3 changed files with 403 additions and 1 deletions

View File

@@ -1,12 +1,15 @@
import React from 'react';
import { Routes, Route } from 'react-router-dom';
import { Routes, Route, useParams } from 'react-router-dom';
import { observer } from 'mobx-react-lite';
import styled from 'styled-components';
import { useAuthStore } from './stores/AuthStore';
import { useUserStore } from './stores/UserStore';
import Layout from './components/common/Layout';
import Loading from './components/common/Loading';
import CitiesPage from './components/region/CitiesPage';
import CityDetailPage from './components/region/CityDetailPage';
import ArticleDetailPage from './components/article/ArticleDetailPage';
import ServiceDetailPage from './components/service/ServiceDetailPage';
const Container = styled.div`
max-width: 1200px;
@@ -41,6 +44,8 @@ function App() {
<Route path="/" element={<HomePage />} />
<Route path="/cities" element={<CitiesPage />} />
<Route path="/cities/:regionId" element={<CityDetailPage />} />
<Route path="/articles/:articleId" element={<ArticleDetailPageWrapper />} />
<Route path="/services/:serviceId" element={<ServiceDetailPageWrapper />} />
<Route path="/user/profile" element={<UserProfilePage />} />
<Route path="*" element={<NotFoundPage />} />
</Routes>
@@ -48,6 +53,16 @@ function App() {
);
}
const ArticleDetailPageWrapper = observer(() => {
const { articleId } = useParams();
return <ArticleDetailPage articleId={articleId} />;
});
const ServiceDetailPageWrapper = observer(() => {
const { serviceId } = useParams();
return <ServiceDetailPage serviceId={serviceId} />;
});
const HomePage = observer(() => {
return (
<Container>