티스토리 뷰
SvelteKit에서는 여러 특별한 파일들이 있으며, 각각 고유한 역할을 합니다. 주요 파일들과 그 역할은 다음과 같습니다.
해당 파일을들은 이름 변경 없이 그대로 작성하여 사용하여야 하며 이것은 규칙이라고 생각하면된다.
1. `+page.svelte`
- 역할: 페이지의 클라이언트 측 컴포넌트를 정의합니다.
- 이 파일에서 페이지의 UI와 클라이언트 측 로직을 작성합니다.
2. `+page.server.js`
- 역할: 서버 측에서 페이지 데이터를 로드하고 처리합니다.
- `load` 함수를 export하여 서버 측 데이터 로딩을 수행합니다.
- 서버에서만 실행되므로 데이터베이스 접근 등 민감한 작업을 수행할 수 있습니다.
3. `+page.js`
- 역할: 클라이언트와 서버 양쪽에서 실행되는 페이지 로직을 정의합니다.
- `load` 함수를 export하여 양쪽에서 데이터 로딩을 수행할 수 있습니다.
4. `+layout.svelte`
- 역할: 여러 페이지에 공통적으로 적용되는 레이아웃을 정의합니다.
- 네비게이션 바, 푸터 등 공통 UI 요소를 포함할 수 있습니다.
5. `+layout.server.js`
- 역할: 레이아웃에 대한 서버 측 로직을 정의합니다.
- 여러 페이지에 공통적으로 필요한 서버 측 데이터를 로드할 수 있습니다.
6. `+layout.js`
- 역할: 클라이언트와 서버 양쪽에서 실행되는 레이아웃 로직을 정의합니다.
7. `+server.js`
- 역할: API 엔드포인트를 정의합니다.
- HTTP 메서드(GET, POST 등)에 대한 핸들러를 export하여 API 요청을 처리합니다.
8. `+error.svelte`
- 역할: 에러 페이지를 정의합니다.
- 404, 500 등의 에러 발생 시 표시될 페이지를 커스터마이즈할 수 있습니다.
9. `hooks.server.js`
- 역할: 서버 측 훅을 정의합니다.
- 모든 요청에 대해 실행되는 로직을 정의할 수 있습니다 (예: 인증).
10. `hooks.client.js`
- 역할: 클라이언트 측 훅을 정의합니다.
- 네비게이션 이벤트 등을 처리할 수 있습니다.
이 파일들은 SvelteKit의 파일 기반 라우팅 시스템의 일부로, 각 파일의 위치와 이름이 중요합니다. 예를 들어, `routes` 디렉토리 내의 파일 구조가 웹사이트의 URL 구조를 결정합니다.
각 파일은 특정 상황과 요구사항에 따라 선택적으로 사용될 수 있으며, 필요한 기능에 따라 적절한 파일을 생성하고 사용하면 됩니다.
'IT이야기' 카테고리의 다른 글
ko-gemma-2 사용하기 (0) | 2024.08.06 |
---|---|
git 오류 There is no tracking information for the current branch (0) | 2024.08.05 |
무료 Storage : Supabase , Backblaze B2 (0) | 2024.07.21 |
Svelte flowbite 설치하고 사용하기 (0) | 2024.06.26 |
IT 업계의 부자 10인 그들의 성공 스토리 (0) | 2024.06.22 |
- Total
- Today
- Yesterday
- ai응용
- 스마트시티
- 머신러닝 보안
- 디지털 유로
- 뉴로모픽 컴퓨팅
- 스벨트
- 메타버스 금융
- 레거시 시스템 현대화
- PostgreSQL
- javascript
- 가상현실 뱅킹
- ai
- Svelte
- 가상 은행 지점
- java
- 프로그래밍언어
- 로보틱스 발전
- 데이터베이스
- 신경망 모방
- 인공지능 해킹
- nft 담보대출
- 스파이킹 뉴럴 네트워크
- 빅데이터
- 프론트엔드
- Python
- 미래 금융 서비스
- iot 엣지 컴퓨팅
- 디지털 금융 혁신
- 트렌드
- 딥페이크 위협
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | 5 | 6 | 7 |
8 | 9 | 10 | 11 | 12 | 13 | 14 |
15 | 16 | 17 | 18 | 19 | 20 | 21 |
22 | 23 | 24 | 25 | 26 | 27 | 28 |
29 | 30 | 31 |