vue router 权限
路由的概念
在了解如何进行权限控制之前,我们首先需要了解一些路由相关的概念。所谓路由,就是指用户打开页面时浏览器需要发送 HTTP 请求,后台服务器会根据前端传递的参数返回相应的 HTML 页面或 JSON 数据。
前端路由和后端路由
前端路由和后端路由是两种不同的路由方式。前端路由,也称为客户端路由,是通过 JavaScript 操作浏览器的 history 对象实现的。前端路由优点是用户体验好,用户不必频繁刷新页面,只需要更新局部内容。而后端路由是指在服务器端配置 URL 规则,根据不同的 URL,服务器会返回对应的HTML 页面或 JSON 数据。
路由的权限控制
假如我们的应用需要对不同的用户进行权限管理,不同的用户只能访问到对应的路由。那么我们可以通过 Vue Router 的路由守卫来实现权限的控制。在 Vue Router 中,路由守卫分为全局守卫和路由独享的守卫。
全局守卫
全局守卫就是在任意路由跳转前、后都会被执行的函数,可以在全局守卫中实现权限控制。全局守卫有 3 个函数:beforeEach、beforeResolve、afterEach。
beforeEach函数
beforeEach 函数会在每次路由跳转前触发,它的参数是 to、from 和 next。to 表示即将要跳转的路由,from 表示当前路由,next 是一个函数用来控制路由跳转,如果需要进行路由跳转,则需要调用 next 方法。
beforeResolve函数
beforeResolve 函数会在路由跳转成功之前触发,和 beforeRouteEnter 的区别是 beforeResolve 是在路由组件的异步组件加载完成之后,再进行调用的。
afterEach函数
afterEach 函数会在每次路由跳转后触发,提供一个 to 和 from 参数用来获取当前路由和上一个路由的信息。
路由独享的守卫
路由独享的守卫是指仅对当前路由起作用的守卫,其与全局守卫一样,有 3 个函数,分别是 beforeEnter、beforeRouteUpdate、beforeRouteLeave。
beforeEnter函数
beforeEnter 函数是在路由配置的时候进行设置,在进入当前路由前会执行。
beforeRouteUpdate函数
beforeRouteUpdate 函数是在当前路由组件再次被使用时触发,参数和 beforeRouteEnter 函数一样。
beforeRouteLeave函数
beforeRouteLeave 函数是在离开当前路由前触发,不同于全局守卫,这里必须要手动调用 next。
通过使用 Vue Router 的路由守卫,我们可以非常方便地实现前端路由的权限控制。当用户访问未授权的路由时,我们可以通过全局守卫或路由独享的守卫跳转到登录页面或其他需要授权的页面。这些路由的权限控制可以帮助我们实现更加安全和可靠的应用,值得我们去学习和使用。
免责声明:本站资源来自互联网收集,仅供用于学习和交流,请遵循相关法律法规,本站一切资源不代表本站立场,如有侵权、后门、不妥请联系本站删除!
更新日志
- 凤飞飞《我们的主题曲》飞跃制作[正版原抓WAV+CUE]
- 刘嘉亮《亮情歌2》[WAV+CUE][1G]
- 红馆40·谭咏麟《歌者恋歌浓情30年演唱会》3CD[低速原抓WAV+CUE][1.8G]
- 刘纬武《睡眠宝宝竖琴童谣 吉卜力工作室 白噪音安抚》[320K/MP3][193.25MB]
- 【轻音乐】曼托凡尼乐团《精选辑》2CD.1998[FLAC+CUE整轨]
- 邝美云《心中有爱》1989年香港DMIJP版1MTO东芝首版[WAV+CUE]
- 群星《情叹-发烧女声DSD》天籁女声发烧碟[WAV+CUE]
- 刘纬武《睡眠宝宝竖琴童谣 吉卜力工作室 白噪音安抚》[FLAC/分轨][748.03MB]
- 理想混蛋《Origin Sessions》[320K/MP3][37.47MB]
- 公馆青少年《我其实一点都不酷》[320K/MP3][78.78MB]
- 群星《情叹-发烧男声DSD》最值得珍藏的完美男声[WAV+CUE]
- 群星《国韵飘香·贵妃醉酒HQCD黑胶王》2CD[WAV]
- 卫兰《DAUGHTER》【低速原抓WAV+CUE】
- 公馆青少年《我其实一点都不酷》[FLAC/分轨][398.22MB]
- ZWEI《迟暮的花 (Explicit)》[320K/MP3][57.16MB]