页面直接引入 vue-router 定义路由+嵌套路由 新手入门

简单来说,路由实现起来需要四步,闲话不多说,直接上代码

 第一步  当然是先来组件了,(引入vue,vue-router就不多说了)         

var a = Vue.component('lee', {
    template: '#lee'
})
var b = Vue.component('lee1', {
    template: '#lee1'
})

var c = Vue.component('lee2', {
    template: '<div>c</div>'
})
var s = Vue.component('lee3', {
    template: '<div>s</div>'
})

   

第二步 配置routes

           

 var routes = [
    {
      path: '/',
      component: a
    },
    {
     path: '/lee1',
     component: b,
     children: [
       {   //此处配置为嵌套路由
        path: '',      //路由为/lee1是匹配到此处
        component: s
       },
       {
        path: 'c',    //路由为/lee1/c是匹配到此处
        component:c
       }
      ]
    }
]

  第三步  把设置好的routes放到 创建的VueRouter实例中            

var router = new VueRouter({
   routes   //es6语法  完整的为 routes:routes
})

第四步  将VueRouter放到 vue实例中     

  new Vue({
   el: '#box',
   router    //es6语法  完整的为 router:router

})

上面的是js部分的代码 ,完整代码如下

<!DOCTYPE html>
<html>


<head>
  <meta charset="UTF-8">
  <title></title>
  <script src="vue.min.js"></script>
  <script src="vue-router.min.js"></script>
</head>


<body>
  <div id="box">

   <router-link to="/">lee</router-link>
   <router-link to="/lee1">lee1</router-link>

   <router-view></router-view>
  </div>
  <template id="lee">
    <div>
       lee
   </div>
  </template>
  <template id="lee1">
    <div>
      <router-link to="/lee1">你好s</router-link>
      <router-link to="/lee1/c">你好c</router-link>
      <br>
      <router-view></router-view>
    </div>
  </template>
</body>
<script>
   var a = Vue.component('lee', {
                 template: '#lee'
            })
   var b = Vue.component('lee1', {
                 template: '#lee1'
            })
   var c = Vue.component('lee2', {
                 template: '<div>c</div>'
            })
   var s = Vue.component('lee3', {
                 template: '<div>s</div>'
            })
   var routes = [
        {
         path: '/',
         component: a
        },
        {
         path: '/lee1',
         component: b,
         children: [
          {
           path: '',
           component: s
          },
          {
           path: 'c',//注意二级路由是不需要加/的
           component:c
          }
         ]
        }
      ]

var router = new VueRouter({
     routes
})

new Vue({
   el: '#box',
    router
})

</script>


</html>

 

  • 1
    点赞
  • 5
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值