Vue - Router 路由

路由的注册

 1 <!DOCTYPE html>
 2 <html lang="en">
 3 <head>
 4     <meta charset="UTF-8">
 5     <meta http-equiv="x-ua-compatible" content="IE=edge">
 6     <meta name="viewport" content="width=device-width, initial-scale=1">
 7     <title>Title</title>
 8     <script src="https://cdn.jsdelivr.net/npm/vue@2.5.17/dist/vue.js"></script>
 9     <script src="https://unpkg.com/vue-router/dist/vue-router.js"></script>
10 </head>
11 <body>
12 <div id="app">
13     <!--<router-link to="/">首页</router-link>-->
14     <!--<router-link to="/login">登录</router-link>-->
15     <router-link :to="{name: 'home'}">首页</router-link>
16     <router-link :to="{name: 'login'}">登录</router-link>
17     <router-link to="/xumingyang?age=77">用户页面</router-link>
18 
19     <router-view></router-view>
20 </div>
21 <script>
22     let url = [
23         {
24             path: "/",
25             name: "home",
26             component: {
27                 template: `<div>
28                             <h1>这是首页</h1>
29                             <h2>首页内容</h2>
30                             </div>
31                             `
32             }
33         },
34         {
35             path: "/login",
36             name: "login",
37             component: {
38                 template: `
39                 <div>
40                     <h1>这是登录页面</h1>
41                 </div>`
42             }
43         },
44         {
45             path: "/:username",
46             name: "user",
47             component: {
48                 template: `<div>
49                         <h1>这是用户页面</h1>
50                         <p>用户名{{$route.params.username}}</p>
51                         <p>年龄{{$route.query.age}}</p>
52                         </div>`
53             }
54         }
55     ];
56 
57     let my_router =  new VueRouter({
58         routes: url,
59     });
60 
61     const app = new Vue({
62         el: "#app",
63         router: my_router,
64         mounted(){
65             // 路由的全部信息
66             console.log(this.$route);
67             console.log(this.$router)
68             console.log(this.$el)
69         }
70     })
71 </script>
72 </body>
73 </html>

子路由的注册

<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <title>Document</title>
     <script src="https://cdn.jsdelivr.net/npm/vue@2.5.17/dist/vue.js"></script>
    <script src="https://unpkg.com/vue-router/dist/vue-router.js"></script>
</head>
<body>
    <div id="app">
        <router-link :to="{name: 'home'}">首页</router-link>
        <router-view></router-view>

    </div>
    <script>
        
        let routes = [
            {
                path:"/",
                name:"home",
                redirect:"daien",
                component:{
                    template:`<div>
                        <h1>这是首页</h1>
                        <router-link to="daien">戴恩</router-link>
                        <router-link to="zhangqiangqiang">张强强</router-link>
                        <router-view></router-view>
                    </div>`
                },
                children:[
                    {
                        path:"daien",
                        component:{
                            template:`<div><h1>戴恩</h1></div>`
                        }
                    },
                    {
                        path:"zhangqiangqiang",
                        component:{
                            template:`<div><h1>张强强</h1></div>`
                        }
                    }
                ]
            }
        ];
        let router = new VueRouter({
            routes:routes
        });

        const app = new Vue({
            el:"#app",
            router:router,
        })

    </script>
</body>
</html>

 

posted @ 2018-10-29 16:22  九月江  阅读(159)  评论(0编辑  收藏  举报