码迷,mamicode.com
首页 > 其他好文 > 详细

前端路由

时间:2018-01-30 00:17:46      阅读:106      评论:0      收藏:0      [点我收藏+]

标签:nts   col   new   for   detail   ons   app   pack   type   

vue:vue-router  根据不同的地址找到不同的页面

                          单页面应用:无需频繁的从后台刷新页面

npm install vue-router  --save  保存到package。json中

在main.js引入  import VRouter  from ‘v-router’

Vue.use(VRouter);  注册VRouter类

 

let  router=new VRouter({

routes:[

//数组

{

path:‘/apple/:color‘,      :color,即是参数

component:Apple

},{

path:‘’/banana”,

component:Banana

}

]

})   //实例化Router

new Vue({

el:"#app",

router:router,//调用router

template:‘<APP/>‘,

comonents:{ App}

 

})

 

App。vue规定路由中的组件在哪显示

<router-view></router-view>

 

 

路由参数?type=1&code=2

   path:‘/apple/:color/detail/:type‘

带引号的 都是参数

路由参数   :添加完参数后,必须完整的输入地址

 

子组件获取当前路由的参数   

当前组件

html

{{$route.params.color}}

methods:

{

getParam(){

console.log(this.$route.params)

}

}

 

路由的嵌套

{

path:‘/apple‘

component:Apple      

children:[

path:‘/red‘,

component:RedApple

]

}

 

chiidren的组件会渲染到Apple的vue文件的 router-view中

<router-link :to="{path:‘apple/red‘}">to  apple red</router-link>

<router-link to="apple"></router-link>  //此时的to代表href

router-link  :to=""   动态绑定     ,或者对象  {path:,param:{color:‘red‘},name:}接受字符串    :to="   ‘string‘   "  tag="li"   默认的router-link是a 可以改为li

编程似的导航:
router.push({path: ‘apple‘})
router.beforEach()每次跳转前可写方法进行操作,比方说异步检查一下用户信息状态,符合条件再执行router.push({path: ‘apple‘})
1. <keep-alive>
     <router-view></router-view>
       //当前路由内容会被缓存
</keep-alive>
2. 当前路由会添加默认类名:router-link-active

 

前端路由

标签:nts   col   new   for   detail   ons   app   pack   type   

原文地址:https://www.cnblogs.com/huiminxu/p/8379796.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!