当前位置: 首页 > wzjs >正文

做初中试卷的网站建筑网片报价公式

做初中试卷的网站,建筑网片报价公式,什么网站设计素材多,传媒公司网站建设方案Vue Router全局拦截全攻略 一、为什么需要全局拦截? 最近在开发后台管理系统时,突然发现所有页面都需要登录才能访问。如果每个页面都手动检查登录状态,那代码简直要写成意大利面条了。这时候,Vue Router的全局拦截功能就像个贴…

Vue Router全局拦截全攻略

一、为什么需要全局拦截?

最近在开发后台管理系统时,突然发现所有页面都需要登录才能访问。如果每个页面都手动检查登录状态,那代码简直要写成意大利面条了。这时候,Vue Router的全局拦截功能就像个贴心小助手,帮我们统一处理这些逻辑。

二、认识导航守卫

Vue Router提供了完整的导航解析流程,就像地铁安检一样,每个乘客(路由)都要经过几个检查点:

  1. 全局前置守卫(beforeEach):进站前的安检
  2. 路由独享守卫(beforeEnter):特殊通道检查
  3. 组件内守卫(beforeRouteEnter):车厢内抽查

今天咱们重点聊聊这个最常用的beforeEach

三、基础拦截示例

先来个最简单的登录拦截:

const router = new VueRouter({ ... })router.beforeEach((to, from, next) => {if (to.meta.requiresAuth && !isAuthenticated()) {// 如果需要认证且未登录,跳转到登录页next(/login)} else {// 放行next()}
})

这里有几个关键点:

  • to:目标路由对象
  • from:当前路由对象
  • next:必须调用的函数,就像安检员的小旗子

四、实战进阶技巧

1. 权限控制

后台管理系统通常需要根据用户角色显示不同菜单:

router.beforeEach((to, from, next) => {const userRole = getUserRole()const requiredRole = to.meta.roleif (requiredRole && userRole !== requiredRole) {next(/403) // 无权限页面} else {next()}
})

2. 页面访问统计

router.beforeEach((to, from, next) => {trackPageView(to.path) // 发送统计next()
})

3. 动态修改页面标题

router.beforeEach((to, from, next) => {document.title = to.meta.title || 默认标题next()
})

五、常见坑点指南

  1. 忘记调用next():会导致页面卡住,就像把乘客堵在安检口
  2. 无限重定向
    // 错误示范!
    next(/login)
    // 在login页又跳转回首页
    
  3. 异步操作处理
    router.beforeEach(async (to, from, next) => {await checkAuth()next()
    })
    

六、完整项目示例

假设我们有个电商项目,需要:

  • 未登录跳转登录页
  • 已登录但未完善信息跳转资料页
  • 管理员才能访问后台
router.beforeEach(async (to, from, next) => {const isLogin = await checkLogin()const userInfo = await getUserInfo()if (to.meta.requiresAuth && !isLogin) {next({ path: /login, query: { redirect: to.fullPath } })} else if (isLogin && !userInfo.completedProfile && to.path !== /profile) {next(/profile)}else if (to.meta.adminOnly && !userInfo.isAdmin) {next(/403)}else {next()}
})

七、总结

Vue Router的全局拦截就像交通管制系统,合理使用可以让我们的应用:

  • 更安全(权限控制)
  • 更智能(动态路由)
  • 更可维护(统一处理)

记住几个要点:

  1. 一定要调用next()
  2. 处理好异步情况
  3. 避免循环跳转

现在,快去给你的路由加上守卫吧!


文章转载自:

http://6iYPXrnY.rqhdt.cn
http://J2uTJl0z.rqhdt.cn
http://MrSYewB3.rqhdt.cn
http://112ATNqV.rqhdt.cn
http://SFdsPRkW.rqhdt.cn
http://X2uoAMw8.rqhdt.cn
http://d1E3YGuk.rqhdt.cn
http://thx6PNfG.rqhdt.cn
http://vBUWX5fR.rqhdt.cn
http://ybNvDI3P.rqhdt.cn
http://cJqChu1x.rqhdt.cn
http://lkeIbR6m.rqhdt.cn
http://KvB3m1kD.rqhdt.cn
http://5kSx71KL.rqhdt.cn
http://mI4F9JWt.rqhdt.cn
http://pqdvUFsT.rqhdt.cn
http://8V4L4UUv.rqhdt.cn
http://vkxC8qEg.rqhdt.cn
http://GZDLeGZV.rqhdt.cn
http://L2yWURKR.rqhdt.cn
http://x5a4FcTo.rqhdt.cn
http://kD8l9Ziz.rqhdt.cn
http://ZH8XvFVs.rqhdt.cn
http://KitvLqZX.rqhdt.cn
http://6e1BU0ce.rqhdt.cn
http://n65vWtAt.rqhdt.cn
http://0H6FCGnT.rqhdt.cn
http://WUpkRhrM.rqhdt.cn
http://Fs9GtITg.rqhdt.cn
http://aTwFWkDS.rqhdt.cn
http://www.dtcms.com/wzjs/701156.html

相关文章:

  • 龙华app网站开发电子商务网站推广的界定
  • Wordpress装好只能访问如何给网站做seo
  • 厦门软件网站建设北京机建网站
  • 济南网站建设哪个好蜂鸟 网站建设
  • 做网站显示上次登录时间代码建德网站seo
  • 模板网站有哪几类汕头潮南网站建设
  • 南昌网站建设好么模板网站建设全过程
  • 一条龙做网站肥城网站建设电话
  • 北京海淀建设支行有哪些成都建站优化
  • 成都公司网站设计哪家专业食品包装设计理念
  • 自媒体采集网站建设vs215开发python网站开发
  • 有没有在家做的手工活网站it外包公司简介
  • 电影网站开发源代码百度搜索电话
  • 做爰全过程网站免费的视频好的文化网站模板下载
  • 企业网站seo多少钱郑州官网seo厂家
  • 做网站技术选择宜州做网站
  • 五大门户网站分别是wordpress可以做什么
  • 郑州给公司做网站的公司网站推广找客户
  • 做网站需要服务器么wordpress排版界面
  • 北京汇云世纪网络科技有限公司做网站怎么样如何建设网站建设
  • 做网站的职位叫什么wordpress谷歌字体更换
  • 公司网站制作效果怎么样手机网站和微信网站有哪些
  • 龙岩网站建设大概费用梅州兴宁网站建设培训
  • 网站备案填写电话号码婚纱摄影网站设计理念
  • 呼和浩特企业网站怎样设计一个移动网站
  • 咸阳网站制作建设成全视频免费观看在线看下载动漫
  • 怎么样做网站推广实力网站开发
  • 网站首页被k怎么恢复做旅游景点网站的目的和意义
  • 提高网站粘性目前在哪个平台做推广好
  • 网站为什么被百度k了wordpress主题模板制作教程