美文网首页
2018-09-25路由

2018-09-25路由

作者: 好多好多鱼z | 来源:发表于2018-09-25 09:09 被阅读0次

1.路由

<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <title>Document</title>
</head>
<body>
   <div id="app">
       <router-link to="/a">首页</router-link>
       <router-link to="/b">关于我们</router-link>
       <router-view></router-view>
   </div>
    <script src="js/vue.js"></script>
    <script src="js/vue-router.js"></script>
    <script>
        var A = {
            template:`
                <h1>你好</h1>
            `
        }
        
        var B = {
            template:`
                <h1>不好</h1>
            `
        }
        
        const routers=[
            {path:"/",component:A},           
            {path:"/a",component:A},
            {path:"/b",component:B}

        ]
        
        const router=new VueRouter({
            routes:routers
        })
        
       new Vue({
           el:"#app",
           router:router
       })
    
    </script>
</body>
</html>
QQ拼音截图未命名.png

2.路由的嵌套

<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <title>Document</title>
    <style>
        .o{
            color: red;
        }
    </style>
</head>
<body>
<div id="app">
    <router-link to="/home">首页</router-link>
    <router-link to="/detail">详情页</router-link>
    <router-view></router-view>
</div>
<script src="js/vue.js"></script>
<script src="js/vue-router.js"></script>
<script>
    var Home ={
        template:`
               <div>
               <h1>这是首页</h1>
               </div>
            `
    }

    var Detail ={
        template:`
               <div>
                 <h1>这是详情页</h1>
                 <ul>
                    <li>
                       <router-link to="/detail/a">登陆</router-link>

                    </li>
                     <li>
                       <router-link to="/detail/b">注册</router-link>

                    </li>
                 </ul>
                 <router-view></router-view>
               </div>
            `
    }
    var A={
        template:`
           <h3>aaaa</h3>
        `
    }

    var B={
        template:`
           <h3>bbbb</h3>
        `
    }

    const C=[
        {path:"/",component:Home},
        {path:"/home",component:Home},
        {path:"/detail",component:Detail,
        children:[
            {path:"a",component:A},
            {path:"b",component:B}
        ]
        }
    ]
    const D=new VueRouter({
        routes:C,
        linkActiveClass:"o"

    })
    new Vue({
        el:"#app",
        router:D
    })
</script>
</body>
</html>
QQ拼音截图未命名.png

3.路由的传参

 路由的传参:
      1.查询字符串
         /user/regist?name=jack&age=18  
         接收:{{$route.query}}                                   
      2.rest风格
         /user/login/jack/18
         接收: {{$route.params}}
<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <title>Document</title>
    <style>
        .o{
            color: red;
        }
    </style>
</head>
<body>
<div id="app">
    <router-link to="/home">首页</router-link>
    <router-link to="/detail">详情页</router-link>
    <router-view></router-view>
</div>
<script src="js/vue.js"></script>
<script src="js/vue-router.js"></script>
<script>
    var Home ={
        template:`
               <div>
               <h1>这是首页</h1>
               </div>
            `
    }

    var Detail ={
        template:`
               <div>
                 <h1>这是详情页</h1>
                 <ul>
                    <li>
                       <router-link to="/detail/a?name=jack&age=18">登陆</router-link>

                    </li>
                     <li>
                       <router-link to="/detail/b/rose/jack">注册</router-link>

                    </li>
                 </ul>
                 <router-view></router-view>
               </div>
            `
    }

    var A={
        template:`
        <div>
         <h3>aaaa</h3>
         <a href="">{{$route.query}}</a>
         <ul>
         <li>{{$route.query.name}}</li>
         <li>{{$route.query.age}}</li>
         </ul>
        </div>

        `
    }

    var B={
        template:`
        <div>
         <h3>bbbb</h3>
         <p>{{$route.params}}</p>
                <ul>
                    <li>{{$route.params.name}}</li>
                    <li>{{$route.params.friend}}</li>
                 </ul>
        </div>

        `
    }

    const C=[
        {path:"/",component:Home},
        {path:"/home",component:Home},
        {path:"/detail",component:Detail,
            children:[
                {path:"a",component:A},
                {path:"b/:name/:friend",component:B}
            ]

        }

    ]

    const D=new VueRouter({
        routes:C,
        linkActiveClass:"o"

    })

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



</script>
</body>
</html>
QQ拼音截图未命名.png

相关文章

网友评论

      本文标题:2018-09-25路由

      本文链接:https://www.haomeiwen.com/subject/lljkoftx.html