์ผ | ์ | ํ | ์ | ๋ชฉ | ๊ธ | ํ |
---|---|---|---|---|---|---|
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 |
- next13 emotion
- ๋ฐฑ์ค 2108 nodejs
- suspense ๋์์๋ฆฌ
- ์ฌ์ฉ์ฑ ๊ฐ์
- ๋ฐฑ์ค 1339๋ฒ ์๋ฐ์คํฌ๋ฆฝํธ
- js ๊ฑฐ๋ฆฌ๋๊ธฐ ํ์ธํ๊ธฐ
- ๋ฆฌ์กํธ์ฟผ๋ฆฌ suspense
- ๊ตฌ๋ฆํค
- ๋ฐฑ์ค 1339๋ฒ nodejs
- js ๋ฌธ์์ด ์์ถ
- suspense ๋ณ๋ชฉํ์
- js ์ค์ฝํ
- ๋ฐฑ์ค 2108 ์๋ฐ์คํฌ๋ฆฝํธ
- ๊ตฌ๋ฆํค ์ฑ๋ฆฐ์ง ํ๊ณ
- emtion app router
- js
- emotion RSC
- suspense react-query
- ํ๋ก๊ทธ๋๋จธ์ค ๊ฑฐ๋ฆฌ๋๊ธฐ ํ์ธํ๊ธฐ
- ํ๋ก๊ทธ๋๋จธ์ค ๋ฌธ์์ด ์์ถ
- ์ค์ฝํ
- ์๋ฐ์คํฌ๋ฆฝํธ ๋ฌธ์์ด ์์ถ
- ๊ตฌ๋ฆํค ์ฑ๋ฆฐ์ง
- suspense ๋น๋๊ธฐ
- ์นด์นด์ค ์ฝํ
- ์๋ฐ์คํฌ๋ฆฝํธ ์ค์ฝํ
- ๋ฐฑ์ค 1339๋ฒ js
- app router emotion
- ์ต์ ๋์ฒด์ด๋
- TypeError: createContext only works in Client Components. Add the "use client" directive at the top of the file to use it. Read more:
- Today
- Total
Lennon FE
[React] React Route์ ๋ํด ์์๋ณด์ ๋ณธ๋ฌธ
๋ผ์ฐํ ์ด๋?
= ๋คํธ์ํฌ ์์์ url์ ์ด์ฉํ์ ๋ ์ด๋ค ๊ฒฝ๋ก๋ฅผ ์ด์ฉํด์ ๋ฐ์ดํฐ๋ฅผ ๋ฐ์์ฌ ๊ฑด์ง ๊ฒฐ์ ํด์ฃผ๋ ๊ธธ์ ๊ฒฐ์ ํด์ฃผ๋ ๊ฒ
= ์ฌ์ฉ์๊ฐ url์ ์์ฒญํ์ ๋ ์ด๋ค ํน์ ํ ํ์ด์ง๋ก ์ฐ๊ฒฐํ ๊ฑด์ง ๊ฒฐ์ ํ๋ ๋งค์ปค๋์ฆ
= ์ฌ์ฉ์๊ฐ url์ ์คฌ์ ๋ ์ด๋ค ํ์ด์ง๋ก ์ฐ๊ฒฐํ๊ฑด์ง!
SPA์ ๋ฌธ์ ์
์ฌ์ฉ์๊ฐ ๋ถ๋งํฌํ ์ ์๋ค. ๋ธ๋ผ์ฐ์ ์์์ ๋ค๋ก๊ฐ๊ธฐ, ์์ผ๋ก๊ฐ๊ธฐ์ ๊ฐ์ ๋ค๋น๊ฒ์ด์ ์ด ์ถ๊ฐ๊ฐ ๋์ง ์์
⇒ ํด๋น ๋ฌธ์ ์ ์ ํด๊ฒฐํ๊ธฐ ์ํด React Router ๋ฑ์ฅ
React Router?
์ฌ์ฉ์๊ฐ ์ ๋ ฅํ ์ฃผ์๋ฅผ ๊ฐ์งํ๋ ์ญํ ์ ํ๋ค.
import { BrowerRouter, Link, Router, Routes } from 'react-router-dom'
<BrowerRouter> ํ๊ทธ๋ก ๊ฐ์ธ์ค๋ค.
<BrowerRouter>
</BrowerRouter>
<Routes> ํ๊ทธ๋ก path๋ง๋ค ๋ฌด์จ ์ปดํฌ๋ํธ๋ฅผ ๋ณด์ฌ์ค๊ฑด์ง ์์ฑํ๋ค.
<BrowerRouter>
<Routes>
<Route path='/' exact element={<Home />}>
<Route path='/home' exact element={<Home />}>
<Route path='/profile' exact element={<Profile />}>
</Routes>
</BrowerRouter>
<Link> ํ๊ทธ๋ฅผ ํตํด ํด๋ฆญ ์ ์๋์ผ๋ก url์ ๋ณ๊ฒฝํ ์ ์๋๋ก ํ ์ ์๋ค.
<BrowerRouter>
<nav>
<Link to='/'>Home</Link>
<Link to='/Profile'>Profile</Link>
</nav>
<Routes>
<Route path='/' exact element={<Home />}>
<Route path='/home' exact element={<Home />}>
<Route path='/profile' exact element={<Profile />}>
</Routes>
</BrowerRouter>
Route ์ฌ์ฉ ์ path๋ฅผ ์ฌ๋ฌ ๊ฐ ์ง์ ํ์ ๊ฒฝ์ฐ exact๋ฅผ ์ง์ ํด์ฃผ์.
v6๋ถํฐ Route ์ฌ์ฉ๋ฒ์ด ์๋ ์ฝ๋์ ๊ฐ์ด element๋ฅผ ์ง์ ํ๋ ๊ฒ์ผ๋ก ๋ฐ๋์๋ค.
<Route path='/' exact element={<Home />}>
<Route path='/home' exact element={<Home />}>
<Route path='/profile' exact element={<Profile />}>
๋ค๋ฅธ ํ๋ฉด์ผ๋ก ์ด๋ํ๋ Hook
v6๋ฒ์ ๋ถํฐ useHistory() ⇒ useNavigate()๋ก ๋ณ๊ฒฝ!
const history = useHistory();
history.push('/maker'); // v5
///////////////
const navigate = useNavigate();
navigate('/maker'); // v6
navigate(
'/maker',
{ state: {id: ~~~} }); // ํ์ด์ง ์ด๋ํ ๋ ์ธ์ ์ ๋ฌ ๋น์ฐํ ๊ฐ๋ฅ
'๐งโ๐ป Web > React' ์นดํ ๊ณ ๋ฆฌ์ ๋ค๋ฅธ ๊ธ
[React] ๋น๋๊ธฐ useState ๋๊ธฐ๋ก ์ฒ๋ฆฌํ๊ธฐ (0) | 2022.06.30 |
---|---|
[React] PostCSS์์ style๊ฐ์ root์ฒ๋ผ ์ฌ์ฉํ๋ ๋ฐฉ๋ฒ (2) | 2022.05.21 |
[React] React ๊ธฐ๋ณธ - JSX ๋ฌธ๋ฒ (0) | 2022.04.12 |
[React] React ๊ธฐ๋ณธ - CRA (0) | 2022.04.12 |
[๋ฆฌ์กํธ, mongoose Error] ๊ฐ๋ฐ ์ค ์๋ฌ๋ฅผ ํ์ธํด๋ณด๊ณ ํด๊ฒฐํด๋ณด์ (2) | 2022.01.10 |