오늘은 뷰 라우팅에 대해 알아볼 것 이다 !

        

  <router-link to="/main"> Main 이동 </router-link> <br />
  <router-link to="/login">Login 이동 </router-link>​
URL 값을 변경하는 태그
    
<router-view></router-view>

 

URL 값에 따라 갱신되는 화면 영역

 

<script src="https://unpkg.com/vue-router@3.0.1/dist/vue-router.js"></script>

라우터 CDN 추가

 

    var Main = {
            template: '<div> Main </div>'
        };
        var Login = {
            template: '<div> Login </div>'
        };

Main, Login 컴포넌트 정의

 

       var routes = [{
            path: '/Main',
            component: Main
        }, {
            path: '/Login',
            component: Login
        }];

 각 URL 에 맞춰 표시 할 컴포넌트 지정

 

        var router = new VueRouter({
            router
        });

Vue 라우터 정의

        var app = new Vue({
            router
        }).$mount('#app');

뷰 인스턴스에 라우터 추가

<html lang="en">

<head>
    <meta charset="UTF-8">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">

    <title> Vue Router Sample </title>
</head>

<body>
    <div id="app">
        <h1>뷰 라우터 예제</h1>
        <p>
            <router-link to="/main"> Main 이동 </router-link> <br />
            <router-link to="/login">Login 이동 </router-link>
        </p>
        <router-view></router-view>
    </div>

    <script src="https://cdn.jsdelivr.net/npm/vue/dist/vue.js"></script>
    <script src="https://unpkg.com/vue-router@3.0.1/dist/vue-router.js"></script>
    <script>
        var Main = {
            template: '<div> Main </div>'
        };
        var Login = {
            template: '<div> Login </div>'
        };

        var routes = [{
            path: '/Main',
            component: Main
        }, {
            path: '/Login',
            component: Login
        }];

        var router = new VueRouter({
            routes
        });

        var app = new Vue({
            router
        }).$mount('#app');
    </script>
</body>

</html>

결과물이다

Main을 눌렀을 때 

Url 값이 바뀐다

 

Login을 눌렀을 때

라우터 URL의 해시값 # 없애는 방법

var router = new VueRouter ({
	mode: 'history',
    routes
})

로 변경해주면 URL에 #이 없어진다. ( 히스토리 모드 )

 

Vue.js 입문이라는 책을보고 복습 겸 연습을 하고 있다. 

 

'Vue' 카테고리의 다른 글

Vue 이벤트 수식어  (0) 2020.04.08
package-lock.json VS package.json ?  (0) 2020.04.07
Vue lifecycle 이란 ?  (0) 2020.04.02
Vue.js 시작하기  (0) 2020.04.02
Vue 첫 걸음  (0) 2020.04.01

+ Recent posts