路由定义: 根据不同的url加载不同的页面或内容。
new VueRouter({
// 模式
mode:‘hash‘,
// 路由匹配项
routes:[
{
path:‘/路径‘,
component:加载组件,
name:‘命名路由‘,
alias:‘/路由别名‘,
redirect:‘/重定向‘,
props:true,//让组件可以使用props解耦动态路由参数
meta:{},//元信息对象,额外传参
beforeEach(){}//路由独享守卫
}
],
// 基础跟路由
base:‘/base‘
})
$router.push
,出了push还有replace,go,back
<router-link to=‘/path‘ replace>
定义:不同的地址呈现相同的页面,且基础路径一致
/path/:name
$route.params
一组拥有相同的基础路径的独立路由【页面】。
{
path:‘/base‘,
// 子路由在Base组件的router-view中显示
component:Base,
children:[
{//子路由路径中不加/程序自动拼接
path:‘a‘,component:A
},
{
path:‘b‘,component:B
},
]
}
1.必须使用命名路由的name跳转 2.优先使用动态路由-显式的params 3.隐式的params刷新页面,数据会丢【不推荐】
动态路由传参叫显示的params传参,且必须使用路由命名name属性跳转,不可以使用path,使用params对象传递参数
静态路由使用params传参,地址栏不会带参数,所以刷新页面数据会丢,一般不使用。
使用query传参,地址栏以get请求传参的形式表现。他没有动态路由好看
使用$router
跳转传参 使用$route
获取参数
由程序控制用户的访问地址,重新跳转指定地址,叫重定向。
容错页404,505等。 新旧网址迭代。
{
path:‘/not_path‘,
redirect: "/404"
}
给路由取别名,使不同的地址加载同一个页面:地址栏不变化。
alias地址栏不变化 redirect跳转到指定的路径
是一种路由配置里的传参方式,一般用与路由权限。
用于设置路由里的滚动条位置,及保存滚动条位置信息 里面有三个参数:to,from,savedPosition
路由的生命周期,拦截函数,用于权限控制。 参数: to:即将要进入的下一个路由 from: 当前的路由,要离开的路由,从哪来 next函数必须要调用,它控制路由是否可以进入,默认参数true,如果传入false则阻止路由跳转
beforeRouterUpdate
beforeRouterLeave
原文:https://www.cnblogs.com/2773037489-qq/p/14843881.html