import Vue from 'vue'; import VueRouter from 'vue-router'; Vue.use(VueRouter)
const router = new VueRouter({ routes:[{ path:'/a',redirect:'/b' }] })
const router = new VueRouter({ routes:[{ path:'/a',
name:'foo',
redirect:{name:'foo'} }] })
const router = new VueRouter({ routes:[{ path:'/a',redirect:to=>{ //方法接收 目标路由 做为参数 //return 重定向 字符串路径或者路径对象 } }] })
<router-link to="/card">card</router-link>
import router from '../router';//这里/index.js能够省略不用写。
handleClick:function(index){ //你须要router引用进来,才能进行跳转 router.push(`/card/detail/${index}`);//es6反向引号写法, }
<template> <div> 我是card页面 <ul> <li v-for="(data,index) in datalist" @click="handleClick(index)">{{data}}</li> </ul> <router-view></router-view> </div> </template> <script> import router from '../router';//这里/index.js能够省略不用写。 export default { name:'card', data(){ return { datalist:['card1','card2','card3',] }; }, methods: { handleClick:function(index){ //你须要router引用进来,才能进行跳转 router.push(`/card/detail/${index}`);//es6反向引号写法, } }, } </script> <style> li{list-style: none;cursor: pointer;;} </style>
在须要接收传过来的动态参数的detail界面的代码html
<template> <div> detail界面{{$route.params.id}}这里是接收详细按钮传过来的id值 </div> </template> <script> export default { name:'detail', } </script> <style> </style>
在src文件夹下面的router文件夹的index.js文件的routes添加路径,子组件,而且引用全部文件的路径vue
{ path:'/card', component:Card, children:[ { path:'/card/detail/:id',//动态路由匹配的写法/:id这里只起到占位的做用,也能够添加多个占位符 component:Detail } ] },
export default new Router({ mode:'history', })