diff --git a/frontend/src/app/estimate/view/[id]/page.tsx b/frontend/src/app/estimate/view/[id]/page.tsx index 5aabe49..5e2722b 100644 --- a/frontend/src/app/estimate/view/[id]/page.tsx +++ b/frontend/src/app/estimate/view/[id]/page.tsx @@ -1,3 +1,4 @@ +// app/estimate/view/[id]/page.tsx 'use client'; import React, { useEffect, useState } from 'react'; @@ -12,24 +13,10 @@ interface EstimateDetail { author: string; } -// Define the correct page props type for Next.js 15 -interface PageProps { - params: { - id: string; - }; - searchParams: Record; -} - -export default function EstimateViewPage({ params, searchParams }: PageProps) { +export default function EstimateViewPage({ params }: { params: { id: string } }) { const [estimateData, setEstimateData] = useState(null); const [loading, setLoading] = useState(true); - // 타입 안전하게 ID 변환 함수 추가 - const parseId = (id: string): number => { - const parsedId = parseInt(id); - return isNaN(parsedId) ? -1 : parsedId; // 유효하지 않은 ID는 -1 반환 - }; - useEffect(() => { // 실제로는 API 호출로 대체할 부분 // 임시 데이터를 사용하여 해당 ID의 견적서 데이터를 가져옴 @@ -37,7 +24,7 @@ export default function EstimateViewPage({ params, searchParams }: PageProps) { setLoading(true); // 임시 데이터 (실제로는 API 호출로 대체) - const mockData: EstimateDetail[] = [ + const mockData = [ { id: 1, title: '안녕하세요 이번에 문의드릴게 있어서요', @@ -61,9 +48,8 @@ export default function EstimateViewPage({ params, searchParams }: PageProps) { } ]; - // 타입 안전한 ID 변환 사용 - const parsedId = parseId(params.id); - const foundEstimate = mockData.find(item => item.id === parsedId); + // 파라미터로 받은 ID와 일치하는 견적서 찾기 + const foundEstimate = mockData.find(item => item.id === parseInt(params.id)); setEstimateData(foundEstimate || null); setLoading(false);