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', })