Vue Router 4 ์๋ฒฝ ๊ฐ์ด๋ โ ๊ธฐ์ด๋ถํฐ ์ค์ฒฉ ๋ผ์ฐํธ๊น์ง
Vue 3์ ํจ๊ป ์ฌ์ฉํ๋ Vue Router 4์ ์ค์น๋ถํฐ ๋์ ๋ผ์ฐํธ, ๋ค๋น๊ฒ์ด์ ๊ฐ๋, ์ค์ฒฉ ๋ผ์ฐํธ๊น์ง ์ค์ ์์ ๋ก ์ ๋ฆฌํฉ๋๋ค.
11๊ฐ์ ํฌ์คํธ
Vue 3์ ํจ๊ป ์ฌ์ฉํ๋ Vue Router 4์ ์ค์น๋ถํฐ ๋์ ๋ผ์ฐํธ, ๋ค๋น๊ฒ์ด์ ๊ฐ๋, ์ค์ฒฉ ๋ผ์ฐํธ๊น์ง ์ค์ ์์ ๋ก ์ ๋ฆฌํฉ๋๋ค.
Vue 3์ Composition API๋ฅผ ์ฒ์๋ถํฐ ์ฐจ๊ทผ์ฐจ๊ทผ ๋ฐฐ์๋ด ๋๋ค. setup(), ref, reactive, computed์ ํต์ฌ ๊ฐ๋ ์ ์์ ๋ก ์ตํ๋ณด์ธ์.
Vuex๋ฅผ ๋์ฒดํ๋ Vue 3 ๊ณต์ ์ํ ๊ด๋ฆฌ ๋ผ์ด๋ธ๋ฌ๋ฆฌ Pinia. defineStore, state, getters, actions๋ฅผ ์ค์ ์์ ๋ก ์ตํ๋ด ๋๋ค.
Vue 3์์ ์ปดํฌ๋ํธ ๊ฐ ๋ฐ์ดํฐ๋ฅผ ์ฃผ๊ณ ๋ฐ๋ ๋ชจ๋ ๋ฐฉ๋ฒ์ ์์ ๋ก ์ ๋ฆฌํฉ๋๋ค. props, emit, provide/inject, ๊ทธ๋ฆฌ๊ณ ์ ์ญ ์ํ ๊ด๋ฆฌ๊น์ง.
Vue 3 ํ๋ก์ ํธ์ TypeScript๋ฅผ ์ฌ๋ฐ๋ฅด๊ฒ ์ค์ ํ๋ ๋ฐฉ๋ฒ. defineProps, defineEmits, ref, reactive์ ํ์ ์ง์ ์ ์ค์ ์์ ๋ก ์ ๋ฆฌํฉ๋๋ค.
Vite๋ก Vue 3 ๊ฐ๋ฐ ํ๊ฒฝ์ ๋น ๋ฅด๊ฒ ๊ตฌ์ฑํ๋ ๋ฐฉ๋ฒ. ๊ฒฝ๋ก ๋ณ์นญ, ํ๊ฒฝ ๋ณ์, ํ๋ก์, ๋น๋ ์ต์ ํ ์ค์ ๊น์ง ํ ๋ฒ์ ์ ๋ฆฌํฉ๋๋ค.
React ํจ์ํ ์ปดํฌ๋ํธ์ ํต์ฌ์ธ Hooks๋ฅผ ์ค์ ์์ ๋ก ์ ๋ฆฌํฉ๋๋ค. useState, useEffect, useRef, useMemo, useCallback์ ์ฌ๋ฐ๋ฅธ ์ฌ์ฉ๋ฒ์ ์์๋ด ๋๋ค.
Props drilling ์์ด ์ปดํฌ๋ํธ ํธ๋ฆฌ ์ ์ฒด์ ๋ฐ์ดํฐ๋ฅผ ๊ณต์ ํ๋ Context API ์ฌ์ฉ๋ฒ. ํ ๋ง, ์ธ์ฆ ์ํ, ๋ค๊ตญ์ด ์ฒ๋ฆฌ ์ค์ ์์ ๋ฅผ ์ ๋ฆฌํฉ๋๋ค.
Next.js 14 App Router์ ํต์ฌ ๊ฐ๋ ์ ์ ๋ฆฌํฉ๋๋ค. ์๋ฒ ์ปดํฌ๋ํธ, ํด๋ผ์ด์ธํธ ์ปดํฌ๋ํธ, ๋์ ๋ผ์ฐํ , ๋ ์ด์์, ๋ก๋ฉ/์๋ฌ ์ฒ๋ฆฌ๊น์ง ์ค์ ์์ ๋ก ์์๋ด ๋๋ค.
TanStack Query v5๋ฅผ ํ์ฉํด API ๋ฐ์ดํฐ ํ์นญ, ์บ์ฑ, ๋๊ธฐํ๋ฅผ ํจ์จ์ ์ผ๋ก ์ฒ๋ฆฌํ๋ ๋ฐฉ๋ฒ์ ์ค์ ์์ ๋ก ์ ๋ฆฌํฉ๋๋ค.
React ํ๋ก์ ํธ์์ TypeScript๋ฅผ ์ฌ๋ฐ๋ฅด๊ฒ ์ฌ์ฉํ๋ ๋ฐฉ๋ฒ. ์ปดํฌ๋ํธ Props ํ์ , ์ด๋ฒคํธ ํธ๋ค๋ฌ, useRef, ์ ๋ค๋ฆญ ์ปดํฌ๋ํธ๊น์ง ์ค์ ํจํด์ ์ ๋ฆฌํฉ๋๋ค.