1.路由导航
①声明式导航
<router-link to='/costomer'>跳转</router-link>
②编程式的导航
router.push(location, onComplete?, onAbort?)
router.replace(location, onComplete?, onAbort?)
在 2.2.0+,可选的在 router.push 或 router.replace 中提供 onComplete 和 onAbort 回调作为第二个和第三个参数。这些回调将会在导航成功完成 (在所有的异步钩子被解析之后) 或终止 (导航到相同的路由、或在当前导航完成之前导航到另一个不同的路由) 的时候进行相应的调用。
- 该方法的参数可以是一个字符串路径,或者一个描述地址的对象。例如:
// 字符串
this.$router.push('home')
// 对象
this.$router.push({ path: 'home' })
// 命名的路由
this.$router.push({ name: 'user', params: { userId: 123 }})
// 带查询参数,变成 /register?plan=private
this.$router.push({ path: 'register', query: { plan: 'private' }})
const userId = 123
this.$router.push({ name: 'user', params: { userId }}) // -> /user/123
this.$router.push({ path: `/user/${userId}` }) // -> /user/123
// 这里的 params 不生效。注意:如果提供了 path,params 会被忽略
this.$router.push({ path: '/user', params: { userId }}) // -> /user
2.路由传参
①
let router = new VueRouter({
mode: 'history',
routers:[{
path: '/customer/:color',
component: customer
}]
})
②
<router-link :to='{path: "/customer", params: {name: "张三"}}'>跳转</router-link>
③具名传参
<router-link :to='{name: "customerName", params: {name: "张三"}}'>跳转</router-link>
3.参数接收
let result = this.$route.params;