vue router
๋ทฐ๋ก ์ฑ๊ธ ํ์ด์ง ์ดํ๋ฆฌ์ผ์ด์ ์ ๊ตฌํํ ๋ ํ๋ฉด ์ ํ ๋ฐ ํ์ด์ง ์ด๋์ ์ํด ์ฌ์ฉํ๋ ๋ผ์ด๋ธ๋ฌ๋ฆฌ์ด๋ค.
์น์์ ๋ผ์ฐํ ์ ํ์ด์ง ๊ฐ์ ์ด๋ ๋ฐฉ๋ฒ์ ๋ปํ๋๋ฐ ๋ทฐ๋ ํ๋ฉด ์ด๋ ์ DOM์ ์๋ก ๊ฐฑ์ ํ์ง ์๊ณ ๋ณ๊ฒฝ๋ ์ปดํฌ๋ํธ๋ง ๊ฐฑ์ ํ์ฌ ๊น๋นก์ ์์ด ๋งค๋๋ฝ๊ฒ ์ ํ๋๋ ์ฅ์ ์ด ์๋ค.
<router-link>
ํ์ด์ง ์ด๋ ํ๊ทธ๋ก ํ๋ฉด์์ <a> ํ๊ทธ๋ก ์นํ๋์ด ์คํ๋๋ค.
:to ์์ฑ
- path: ์ด๋ํ๋ ค๋ ๊ฒฝ๋ก
- name: ์ด๋ํ๋ ค๋ ๊ฒฝ๋ก๋ฅผ ๋ผ์ฐํฐ์ ์ค์ ๋ ์ด๋ฆ์ผ๋ก ์ง์
- query: query string ํํ๋ก ์ ๋ฌ๋๋ ํ๋ผ๋ฏธํฐ, GET ๋ฐฉ์
- params: name ์์ฑ์ ์ง์ ํ์ฌ ์ด๋ํ ๋(path๊ฐ ์๋) ์ ๋ฌ๋ ํ๋ผ๋ฏธํฐ, POST ๋ฐฉ์
query vs. params
๐ง params๋ฅผ ์ฌ์ฉํ๋ ค๋ฉด path๊ฐ ์๋ name์ผ๋ก ์ด๋ ๊ฒฝ๋ก๋ฅผ ์ง์ ํด์ผ ํ๋ค.
query
// ๋ณด๋ด๋ ์ชฝ
<router-link :to="{ path: '/main', query: { msg: 'hello' }}">ํ์ด์ง ์ด๋</router-link>
// ๋ฐ๋ ์ชฝ
{{ $route.query.msg }}
params
// ๋ณด๋ด๋ ์ชฝ
<router-link :to="{ name: 'main', params: { msg: 'hello' }}">ํ์ด์ง ์ด๋</router-link>
// ๋ฐ๋ ์ชฝ
{{ $route.params.msg }}
<router-view>
ํ์ด์ง ํ์ ํ๊ทธ๋ก ๋ณ๊ฒฝ๋๋ URL์ ๋ฐ๋ผ ์ปดํฌ๋ํธ๊ฐ ํ๋ฉด์ ๊ทธ๋ ค์ง ์์ญ์ด๋ค.
'๊ฐ๋ฐ > Vue.js' ์นดํ ๊ณ ๋ฆฌ์ ๋ค๋ฅธ ๊ธ
Vue.js xlsx ์์ ๋ค์ด๋ก๋ (0) | 2022.06.16 |
---|---|
$nextTick() (0) | 2022.04.18 |
Vue ์๋ช ์ฃผ๊ธฐ (0) | 2022.04.13 |
Vue3 Composition API (0) | 2022.04.06 |
Vuex / ์ํ๊ด๋ฆฌ / Vuex ํจํด ๋ฐ ์์ (0) | 2022.04.05 |
๋๊ธ