'use client'; import './style.scss'; import { useState, useEffect } from 'react'; import Link from 'next/link'; import { fetchApi, throwError, formatDate } from '@/lib/utils/client'; import type { MyCommentsResponse } from '@/types/response/account/myComments'; import Loading from '@/app/component/Loading'; import Pagination from '@/app/component/Pagination'; import NavTabs from '../navTabs'; export default function MyComments() { const [error, setError] = useState(''); const [loading, setLoading] = useState(true); const [page, setPage] = useState(1); const [data, setData] = useState({ total: 0, list: [] }); useEffect(() => { if (error) { alert(error); setError(''); } }, [error]); useEffect(() => { setLoading(true); fetchApi(`/api/mypage/comments?page=${page}&perPage=20`).then((res) => { throwError(res); setData(res.data!); }).catch(err => { setError(err.message); }).finally(() => { setLoading(false); }); }, [page]); return ( <>
{ loading && }

작성 댓글

{data.list.length > 0 ? ( data.list.map((row) => ( )) ) : ( )} {data.list.length > 0 && ( )}
합계: {data.total}
번호 게시판 게시글 댓글 내용 추천 작성일
{row.num} {row.boardName} {row.postSubject} {row.content} {row.likes} {formatDate(row.createdAt)}
작성한 댓글이 없습니다.
); }