vue2vue3中你知道什么是路由元信息,路由元信息配置。切换页面跳转路由更换title。

简介: vue2vue3中你知道什么是路由元信息,路由元信息配置。切换页面跳转路由更换title。
} else {
next()
}
} else {
next() // 确保一定要调用 next()
}
})

我们可以通过在meta里设置的状态,来判断是否需要进行登录验证.如果meta里的requiresAuth为true,则需要判断是否已经登录,没登录就跳转到登录页.如果已登录则继续跳转.

此时,有人可能会说,前面说的path,params,query都可以存储信息,作为登录验证的状态标记.的确,它们也可以达到同样的效果.如果是少量单个的验证,使用它们问题不大. 但如果是多个路由都需要进行登录验证呢?path,params,query是把信息显性地存储在url上的.并且多个路径都把一个相同的状态信息加在url上.这样就使url不再单纯,并且也很不优雅美观. 所以要优雅要隐性地传递信息,就使用meta对象吧!

2、怎么切换页面换title呢?(vue3)

import {
createRouter,
createWebHashHistory
} from ‘vue-router’
import homeModel from ‘…/views/homeModel/route’
const routes = [
{
path: ‘/myOrder’,
name: ‘myOrder’,
component: () => import(‘…/components/order/myOrder.vue’),
meta: {
title: ‘我的订单’,
intercept: true,
}
},
{
path: ‘/myRoll’,
name: ‘myRoll’,
component: () => import(‘…/components/roll/myRoll.vue’),
meta: {
title: ‘我的礼券’,
intercept: true,
}
}
]
const router = createRouter({
history: createWebHashHistory(),
routes
})
router.beforeEach((to, go) => {
// 从本地存储中取出token
let token = localStorage.getItem(‘token’)
if (token && token != ‘null’) { // 证明有用户
return true //本地存储有token 用户可以进入页面
} else {
if (to.meta.intercept) { // to.meta.intercept 为true 说名要拦截这个页面
return {
path: ‘/login’,
// query: {
// …to.query
// }
} // return相当于vue2 的next
} else { // 否则就可以进去这个页面
return true
}
}
})
相关文章
|
1月前
|
JavaScript API
vue 批量自动引入并注册组件或路由
vue 批量自动引入并注册组件或路由
|
1月前
|
JavaScript API
vue 批量自动引入并注册组件或路由等等
vue 批量自动引入并注册组件或路由等等
|
2月前
|
JavaScript
vue 自动注册路由
vue 自动注册路由
28 1
|
3月前
|
JavaScript
Vue搭配ELEMENT组件,路由不能正确跳转bug
Vue搭配ELEMENT组件,路由不能正确跳转bug
Vue搭配ELEMENT组件,路由不能正确跳转bug
|
2月前
|
JavaScript
【vue】 vue如何根据不同路由地址更改页面的标题
【vue】 vue如何根据不同路由地址更改页面的标题
21 0
|
2月前
|
JavaScript
vue解决方案 | router-view路由切换时页面不刷新
vue解决方案 | router-view路由切换时页面不刷新
122 0
|
10月前
|
JavaScript 前端开发
Vue系列教程(21)- 自定义404页面&路由模式
Vue系列教程(21)- 自定义404页面&路由模式
49 1
|
4月前
|
JavaScript
Vue刷新子路由
Vue刷新子路由
|
10月前
|
JavaScript
Vue项目新建一个路由页面
Vue项目新建一个路由页面
44 0
|
11月前
|
资源调度 JavaScript 前端开发
vue3动态路由如何设置
vue3动态路由如何设置
212 0