2018-09-24路由

首先明白路由是什么?

路由是vue里面的一个核心插件

路由的作用是什么?

嵌套的路由/视图表
模块化的、基于组件的路由配置
路由参数、查询、通配符
基于 Vue.js 过渡系统的视图过渡效果
细粒度的导航控制
带有自动激活的 CSS class 的链接
HTML5 历史模式或 hash 模式,在 IE9 中自动降级
自定义的滚动条行为

简单写一个路由

<html lang="en">
    <head>
    <meta charset="UTF-8">
    <title>Document</title>
<style>
  /*
          .router-link-active{
                  color:red;
          } 
  */
        .active{
              color:red;
          }
      </style>
  </head>
    <body>
     <a></a>
      <div id='app'>
     <!-- 使用 router-link 组件来导航. -->
    <!-- 通过传入 `to` 属性指定链接. -->
    <!-- <router-link> 默认会被渲染成一个 `<a>` 标签 -->
     <router-link to='/home'>首页</router-link>
     <router-link to='/user'>用户页</router-link> 
 
    <!-- 盛放链接对应的内容-->
  <router-view></router-view>
    </div>
     <script src='js/vue.js'></script> 
     <script src='js/vue-router.js'></script>
     <script>
       //2.创建组件
       var Home={
           template:`
             <h1>这是首页</h1>
         `
       }
   
   var User={
       template:`
            <h1>这是用户页</h1>
        `
   }
   
   //3.配置路由
   const  routes=[
       {path:'/',component:Home},
       {path:'/home',component:Home},
       {path:'/user',component:User}
   ]
   
   //4.创建路由实例
   const router=new VueRouter({
       routes:routes,
       linkActiveClass:'active'
   })
   
   //5.路由实例挂载到vue实例上
   new Vue({
       el:'#app',
       router:router
   })
   
  </script>
</body>
</html>

路由的嵌套:

实例:

  <html lang="en">
  <head>
        <meta charset="UTF-8">
    <title>Document</title>
  </head>
  <body>
    <div id='app'>
   <!--1.-->
     <router-link to='/index'>首页</router-link>
     <router-link to='/user'>用户页</router-link>
       <router-view></router-view>
  </div>
   <script src='js/vue.js'></script> 
   <script src='js/vue-router.js'></script>
   <script>
   //2.创建组件
       var  Index={
       template:`
         <h1>这是首页</h1>
       `
   }
   var User={
       template:`
       <div>
         <h1>这是用户页</h1>
         <ul>
           <li>
              <router-link to='/user/regist'>注册</router-link>
           </li> 
            <li>
              <router-link to='/user/login'>登录</router-link>
           </li>
        </ul>
        <router-view></router-view>
       </div>
     `
       }
   
   
   var Regist={
       template:`
         <h3>这是注册页</h3>
      `
   }
   
    var Login={
       template:`
         <h3>这是登录页</h3>
      `
   }
   
   //3.配置路由
   const routes=[
       {path:'/',component:Index},
       {path:'/index',component:Index},
       {
           path:'/user',
           component:User,
           children:[
               {path:'regist',component:Regist},
               {path:'login',component:Login}
           ]
       }
   ]
   
   //4.创建路由实例
   const router=new VueRouter({
       routes:routes
   })
   
   //5.把路由实例挂载到vue实例上
  new Vue({
      el:'#app',
      router:router//注册路由
  })   
</script>
  </body>
  </html>
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容