๐Ÿ“• Language/Vue

[Age of Vue] Vue.js ์‹œ์ž‘ํ•˜๊ธฐ - 20. ๋ผ์šฐํ„ฐ(Router) ์‹ค์Šต (router-view)

a n u e 2022. 5. 7. 09:54
<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <meta http-equiv="X-UA-Compatible" content="IE=edge">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title>Document</title>
</head>
<body>
    <div id="app">
        <!-- ๋ทฐ ๋ผ์šฐํ„ฐ ์ธ์Šคํ„ด์Šค๋ฅผ ๋ทฐ ์ธ์Šคํ„ด์Šค์— ์—ฐ๊ฒฐํ•ด์•ผ๋งŒ ์‚ฌ์šฉ ๊ฐ€๋Šฅ-->
        <router-view></router-view>
    </div>

    <!-- ์ˆœ์„œ ์ค‘์š”. ๋ทฐ-> ๋ทฐ๋ผ์šฐํ„ฐ -->
    <script src="https://cdn.jsdelivr.net/npm/vue@2/dist/vue.js"></script>
    <script src="https://unpkg.com/vue-router@3.5.3/dist/vue-router.js"></script></script>

    <script>
        var LoginComponent = {
            template : '<div>Login</div>'
        }

        var MainComponent = {
            template : '<div>Main</div>'
        }
        //๋ทฐ์™€ ๋ทฐ ๋ผ์šฐํ„ฐ ์ธ์Šคํ„ด์Šค๋ฅผ ๊ฐ๊ฐ ์ƒ์„ฑ
        //var router๋ฅผ new Vue์— ์—ฐ๊ฒฐํ•ด๋ณด์ž
        var router = new VueRouter({
            //ํŽ˜์ด์ง€์˜ ๋ผ์šฐํŒ… ์ •๋ณด
            //ใ„ด>"์–ด๋–ค url๋กœ ์ด๋™ํ–ˆ์„ ๋•Œ, ์–ด๋–ค ํŽ˜์ด์ง€๋กœ ์ด๋™ํ•˜๋Š”๊ฐ€?"๋ผ๋Š” ์ •๋ณด๊ฐ€ ๋ฐฐ์—ด๋กœ ๋“ค์–ด๊ฐ
            routes : [
                {
                    //ํŽ˜์ด์ง€์˜ url ์ •์˜
                    path : '/login',
                    //ํ•ด๋‹น url์—์„œ ํ‘œ์‹œ๋  ์ปดํฌ๋„ŒํŠธ ์ •์˜
                    component : LoginComponent
                },
                {
                    path : '/main',
                    component : MainComponent
                }
             ]
            });

        new Vue({
                el: '#app',
                //์†์„ฑ์ด๋ฆ„ : ๋ผ์šฐํ„ฐ ๋ณ€์ˆ˜
                router : router
            });
    </script>
</body>
</html>

 

 

 

/login์ด๋ผ๋Š” url๋กœ ์ด๋™ํ–ˆ์„๋•Œ์˜ ์ปดํฌ๋„ŒํŠธ๋ฅผ router-view๋ผ๋Š” ํƒœ๊ทธ๋ฅผ ํ†ตํ•ด ๋‚˜ํƒ€๋‚ธ ๊ฒƒ

 

router-view ํƒœ๊ทธ์— <div>Login</div>๊ฐ€ ์‚ฝ์ž…๋˜์–ด ๋ณด์—ฌ์ง


์ฐธ๊ณ 

๋ผ์šฐํ„ฐ๊ฐ€ ์—ฐ๊ฒฐ์ด ๋˜์ง€ ์•Š์œผ๋ฉด ๋œจ๋Š” ์—๋Ÿฌ