Router, Axios

์ธํ”„๋Ÿฐ Vue.js ์‹œ์ž‘ํ•˜๊ธฐ - Age of Vue / ์žฅ๊ธฐํšจ(์บกํ‹ดํŒ๊ต)

๊ฐ™์€ ์ปดํฌ๋„ŒํŠธ ๋ ˆ๋ฒจ ๊ฐ„์˜ ํ†ต์‹ 

์œ„์—์„œ ์•„๋ž˜๋กœ๋Š” props, ์•„๋ž˜์„œ ์œ„๋กœ๋Š” event

  • ๊ทœ์น™์— ๋งž๊ฒŒ ์ƒ์œ„ ์ปดํฌ๋„ŒํŠธ๋กœ event๋ฅผ ์˜ฌ๋ ค์ฃผ๊ณ  ๋‹ค์‹œ props๋กœ ๋‚ด๋ ค์ค˜์„œ ํ†ต์‹ ํ•จ

Vue Router

var router = new VueRouter({
    // url์˜ ํ•ด์‰ฌ ๊ฐ’ ์ œ๊ฑฐ ์†์„ฑ
    mode: 'history',
    // ํŽ˜์ด์ง€์˜ ๋ผ์šฐํŒ… ์ •๋ณด ์†์„ฑ
    routes: [
        // ๋กœ๊ทธ์ธ ํŽ˜์ด์ง€ ์ •๋ณด
        {
            // ํŽ˜์ด์ง€์˜ url
            path: '/login',
            // ํ•ด๋‹น url์—์„œ ํ‘œ์‹œ๋  ์ปดํฌ๋„ŒํŠธ
            component: LoginComponent
        },
        // ๋ฉ”์ธ ํŽ˜์ด์ง€ ์ •๋ณด
        {
            path: '/main',
            component: MainComponent
        }
    ]
});
  • router-view : ๋ผ์šฐํ„ฐ๊ฐ€ ํ‘œ์‹œ๋˜๋Š” ์˜์—ญ

  • router-link : ๋ผ์šฐํ„ฐ์—์„œ ํŽ˜์ด์ง€ ์ด๋™์„ ์œ„ํ•œ ๋งํฌ(=/ <a>) <router-link to="/login"></router-link>

Navigation guard*

๋ทฐ ๋ผ์šฐํ„ฐ๋กœ ํŠน์ • url์— ์ ‘๊ทผํ•  ๋•Œ ์ธ์ฆ ์ •๋ณด๊ฐ€ ์—†์œผ๋ฉด ์ ‘๊ทผํ•˜์ง€ ๋ชปํ•˜๊ฒŒ ํ•  ๋•Œ ์‚ฌ์šฉํ•˜๋Š” ๊ธฐ์ˆ 

์บกํ‹ดํŒ๊ต๋‹˜ ๋ธ”๋กœ๊ทธ ๊ธ€

vscode ๋‹จ์ถ•ํ‚ค

  • ๊ฐ™์€ ํ…์ŠคํŠธ ์„ ํƒ : Ctrl + d

  • ์‚ฌ์ด๋“œ๋ฐ” ํ† ๊ธ€ : Ctrl + b

Axios

๋ทฐ์—์„œ ๊ถŒ๊ณ ํ•˜๋Š” Promise(์ž๋ฐ”์Šคํฌ๋ฆฝํŠธ์˜ ๋น„๋™๊ธฐ ์ฒ˜๋ฆฌ ํŒจํ„ด)๊ธฐ๋ฐ˜์˜ HTTP ํ†ต์‹  ๋ผ์ด๋ธŒ๋Ÿฌ๋ฆฌ

Vue Resource ๊ณผ๊ฑฐ์˜ ๊ณต์‹ ๋ผ์ด๋ธŒ๋Ÿฌ๋ฆฌ

Ajax - wikipedia

jsonplaceholder - ์ƒ˜ํ”Œ๋ฐ์ดํ„ฐ ์ œ๊ณต

Last updated