svelte는 SPA방식으로 구동한다.
- SPA(Single Page Application): 웹사이트는 하나의 페이지로 이루어져있음. 그 페이지를 동적으로 화면을 바꿔가며 표현하는것
하나의 페이지에서 여러 페이지들의 화면을 바꾸려면 코드가 복잡해짐. 이를 해결하기 위해 svelte-spa router를 사용
[svelte-spa-router]
- 터미널에서 npm intall svelte-spa-router로 설치
- 라우팅경로 설정: 라우팅을 관리하기 위해 routes폴더를 만들어 준다
- Home.svelte파일을 만들어 주고 App.svelte파일을 수정해준다.
- 전체적인 그림은 routes폴더 안에 있는 파일들을 App.svelte에서 라우팅별로 보여주는 것
// --------------- routes/Home.svelte
<script>
let question_list=[];
function get_question_list() {
fetch("http://127.0.0.1:8000/api/question/list").then((response) => {
response.json().then((json) => {
question_list=json;
})
})
}
get_question_list();
<script>
<ul>
{#each question_list as question, index}
<li>{index}, {question.id}, {question.subject}</li>
{/each}
</ul>
// ------------------ App.svelte
<script>
import Router from 'svelte-spa-router' //Router import
import Home from "./routes/Home.svelte" //Home.svelte를 Home으로 정의
//라우팅경로 여기에 계속 추가
const routes = {
"/": Home
}
</script>
<Router{routes}/> // svelt-spa-router 사용(Router마다 달라지는 화면)
'FrameWork > FastAPI' 카테고리의 다른 글
해시기반 라우팅, question_detail (0) | 2024.05.28 |
---|---|
API호출 라이브러리 생성 (0) | 2024.05.27 |
질문목록 호출 및 내용 표시 (0) | 2024.05.26 |
CRUD (0) | 2024.05.26 |
Pydantic & 스키마 (0) | 2024.05.26 |