+
{/* 상단: 종목명 및 코드 */}
-
{stockData.name}
-
{stockData.code}
+
{stockData.stockName}
+
{stockData.stockCode}
@@ -55,18 +69,18 @@ const MarketDetailPage = () => {
전일대비
{changeInfo.icon}
- {stockData.changeAmount.toLocaleString()}
- ({stockData.changeRate.toFixed(2)}%)
+ {todayData.changeAmount.toLocaleString()}
+ ({todayData.changeRate.toFixed(2)}%)
{/* 우측: 상세 거래 정보 */}
-
+
{
value={stockData.currentPrice.toLocaleString()}
className={changeInfo.color}
/>
-
+
-
{/* 하단: 차트 */}
-
);
};
diff --git a/src/pages/MarketsPage.tsx b/src/pages/MarketsPage.tsx
index 3e5f8ee..1bc1fb3 100644
--- a/src/pages/MarketsPage.tsx
+++ b/src/pages/MarketsPage.tsx
@@ -1,17 +1,15 @@
-import { useState, useEffect, useMemo } from "react";
-import MarketList from "../_MarketsPage/components/MarketList";
-import { MOCK_DATA } from "../_MarketsPage/datas/MarketMockData";
-import type { MarketItem } from "../_MarketsPage/types/marketItem";
-import Pagination from "../components/Pagination";
-import Title from "../components/Title";
+import { useState, useEffect } from "react";
+import MarketList from "@/_MarketsPage/components/MarketList";
+import { MOCK_DATA } from "@/_MarketsPage/datas/MarketMockData";
+import type { MarketItem } from "@/_MarketsPage/types/marketItem";
+import Pagination from "@/components/Pagination";
+import Title from "@/components/Title";
const ITEMS_PER_PAGE = 10;
-const CATEGORIES = ["거래대금", "거래량", "급상승", "급하락", "인기"];
const MarketsPage = () => {
const [currentPage, setCurrentPage] = useState(1);
const [marketData, setMarketData] = useState
([]);
- const [activeCategory, setActiveCategory] = useState("거래대금");
// 주가 데이터 로딩
useEffect(() => {
@@ -19,24 +17,9 @@ const MarketsPage = () => {
setMarketData(MOCK_DATA);
}, []);
- // 카테고리 변경 시 데이터 정렬 로직
- const sortedData = useMemo(() => {
- const data = [...marketData];
- switch (activeCategory) {
- case "급상승":
- return data.sort((a, b) => b.changeRate - a.changeRate);
- case "급하락":
- return data.sort((a, b) => a.changeRate - b.changeRate);
- // TODO: '거래대금', '거래량', '인기'에 대한 정렬 로직 구현
- case "거래대금":
- default:
- return data;
- }
- }, [activeCategory, marketData]);
-
// 페이지네이션 계산
- const totalPages = Math.ceil(sortedData.length / ITEMS_PER_PAGE);
- const currentItems = sortedData.slice(
+ const totalPages = Math.ceil(marketData.length / ITEMS_PER_PAGE);
+ const currentItems = marketData.slice(
(currentPage - 1) * ITEMS_PER_PAGE,
currentPage * ITEMS_PER_PAGE
);
@@ -52,23 +35,6 @@ const MarketsPage = () => {
- {/* 카테고리 필터 */}
-
- {CATEGORIES.map((category) => (
-
- ))}
-
-