- {['번호', '제목', '작성일', '조회수', '작성자'].map((h) => (
-
- {h}
-
- ))}
+
+
+
번호
+
제목
+
게시일
+
조회수
+
작성자
- {noticeRows.map((r, idx) => (
+ {noticeRows.map((r) => (
-
{r.id}
-
+
{r.id}
+
{r.title}
-
{r.date}
-
{r.views}
-
{r.writer}
+
{r.date}
+
{r.views.toLocaleString()}
+
{r.writer}
))}
@@ -352,28 +399,7 @@ export default function Home() {
- {/* 푸터 */}
-
+ {/* 전역 Footer는 layout.tsx에서 렌더링됩니다. */}
);
}
diff --git a/src/app/resources/page.tsx b/src/app/resources/page.tsx
new file mode 100644
index 0000000..ac04d01
--- /dev/null
+++ b/src/app/resources/page.tsx
@@ -0,0 +1,153 @@
+'use client';
+
+type ResourceRow = {
+ id: number;
+ title: string;
+ date: string;
+ views: number;
+ writer: string;
+ hasAttachment?: boolean;
+};
+
+const rows: ResourceRow[] = [
+ {
+ id: 6,
+ title: '방사선과 물질의 상호작용 관련 학습 자료',
+ date: '2025-06-28',
+ views: 1230,
+ writer: '강민재',
+ hasAttachment: true,
+ },
+ {
+ id: 5,
+ title: '감마선과 베타선의 특성 및 차이 분석 자료',
+ date: '2025-06-28',
+ views: 594,
+ writer: '강민재',
+ },
+ {
+ id: 4,
+ title: '방사선량 단위(Sv, Gy) 비교 및 계산 예제',
+ date: '2025-06-28',
+ views: 1230,
+ writer: '강민재',
+ },
+ {
+ id: 3,
+ title: '의료 영상 촬영 시 방사선 안전 수칙 가이드',
+ date: '2025-06-28',
+ views: 1230,
+ writer: '강민재',
+ },
+ {
+ id: 2,
+ title: 'X선 발생 원리 및 특성에 대한 이해 자료',
+ date: '2025-06-28',
+ views: 1230,
+ writer: '강민재',
+ },
+ {
+ id: 1,
+ title: '방사선의 기초 개념과 물질과의 상호작용 정리 자료',
+ date: '2025-06-28',
+ views: 1230,
+ writer: '강민재',
+ },
+];
+
+export default function ResourcesPage() {
+ return (
+
+
+
+ {/* 헤더 영역 */}
+
+
+ 학습 자료실
+
+
+
+ {/* 본문 영역 */}
+
+ {/* 총 건수 */}
+
+
+ {/* 표 */}
+
+ {/* 헤더 */}
+
+
+ 번호
+
+
+ 제목
+
+
+ 게시일
+
+
+ 조회수
+
+
등록자
+
+
+ {/* 바디 */}
+
+ {rows.map((r) => (
+
+
+ {r.id}
+
+
+ {r.title}
+ {r.hasAttachment && (
+
+ )}
+
+
+ {r.date}
+
+
+ {r.views.toLocaleString()}
+
+
{r.writer}
+
+ ))}
+
+
+
+
+
+
+ );
+}
+
+
diff --git a/src/app/svgs/chevrondownsvg.tsx b/src/app/svgs/chevrondownsvg.tsx
new file mode 100644
index 0000000..9bea139
--- /dev/null
+++ b/src/app/svgs/chevrondownsvg.tsx
@@ -0,0 +1,28 @@
+export default function ChevronDownSvg(
+ {
+ width = 24,
+ height = 24,
+ className = '',
+ }: { width?: number | string; height?: number | string; className?: string }
+): JSX.Element {
+ return (
+
+ );
+}
+
+
diff --git a/src/app/svgs/closexsvg.tsx b/src/app/svgs/closexsvg.tsx
new file mode 100644
index 0000000..49226eb
--- /dev/null
+++ b/src/app/svgs/closexsvg.tsx
@@ -0,0 +1,16 @@
+"use client";
+
+export default function ModalCloseSvg() {
+ return (
+
+ );
+}
+
+