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

合肥网站建石家庄做网站百度推广

合肥网站建,石家庄做网站百度推广,湖南seo网站开发,重庆做网站团队在Vue 3中#xff0c;路由守卫是一种控制和管理路由跳转的机制。它允许你在执行导航前后进行一些逻辑处理#xff0c;比如权限验证、数据预取等#xff0c;从而增强应用的安全性和效率。路由守卫分为几种不同的类型#xff0c;每种类型的守卫都有其特定的应用场景。 其实路…    在Vue 3中路由守卫是一种控制和管理路由跳转的机制。它允许你在执行导航前后进行一些逻辑处理比如权限验证、数据预取等从而增强应用的安全性和效率。路由守卫分为几种不同的类型每种类型的守卫都有其特定的应用场景。 其实路由守卫跟生命周期的钩子函数有相似之处,都是在特定的时机执行特定函数 , 不过路由守卫主要关注的是路由级别的导航控制而生命周期钩子则更侧重于组件自身的状态变化。 全局守卫 import { createRouter, createWebHistory } from vue-router;/ 全局前置守卫 router.beforeEach((to, from, next) {// 执行权限验证等操作console.log(全局前置守卫);next(); });// 全局解析守卫 router.beforeResolve((to, from, next) {// 执行某些操作console.log(全局解析守卫);next(); });// 全局后置守卫 router.afterEach((to, from) {// 执行某些操作console.log(全局后置守卫); }); 全局前置守卫 (beforeEach): 在路由跳转之前执行在导航开始时最早被调用,通常用于权限验证或登录判断。全局解析守卫 (beforeResolve): 在导航被确认之前所有组件内守卫和异步路由组件被解析之后调用。全局后置守卫 (afterEach): 在路由跳转后执行常用于页面加载完成后的操作比如页面标题的更新。 其中函数的参数中 to 与 from :  to指的是要导航到的组件,而from是从哪个组件来,to和from都是对象,可以从里面拿到路径,参数,等等一系列的数据 next : 一个函数,用于控制路由导航的流程 next()继续导航。next(false)取消导航。next({ path: /new-path })传入对象,与to中写法类似。next(new Error(Error message))中断导航并传递错误。next(vm { ... })在 beforeRouteEnter 中使用获取组件实例。 路由独享守卫 路由独享守卫 (beforeEnter): 在每次导航匹配到该路由时调用 ,只作用于某个具体的路由可以在路由配置中定义用于在特定路由进入前执行操作。 {path: /person,name: person,component: person,beforeEnter: (to, from, next) {// 路由进入前的操作console.log(路由独享守卫 person路由进入前的操作);next();}}, 独享守卫是在具体的某条路由规则里面配置的,因此需要写在规则中,且只有要路由到目标组件前时才触发 ,触发时机在beforeEach之后,beforeRouteEnter之前 组件内守卫 script langts setup namespaceperson import { onBeforeRouteLeave, onBeforeRouteUpdate } from vue-router;// 离开前守卫 onBeforeRouteLeave((to, from) {console.log(组件路由离开前 beforeRouteLeave); });// 依然是当前组件,但是参数更新,如params,query参数 onBeforeRouteUpdate((to, from) {console.log(组件更新了Route updated); }); /scriptscript langts /* 这里请注意, vue3的setup,是组件创建时候的钩子因此在setup里面是写不了beforeRouteEnter的beforeRouteEnter是在导航进入该组件之前被调用的*/ import { defineComponent } from vue; export default defineComponent({beforeRouteEnter(to, from, next) {console.log(组件路由进入前 beforeRouteEnter);next();}})/script 路由进入有组件内路由守卫的组件 离开 在组件参数变化时候 beforeRouteEnter: 在路由进入前执行的操作但在组件实例被创建之前调用因此不能访问组件实例 , 也不能写在vue3的 setup标签内。onBeforeRouteUpdate: 在路由更新时执行的操作比如路由参数发生变化时。onBeforeRouteLeave: 在路由离开前执行的操作可以访问组件实例。 总结 守卫执行顺序 导航到了不同的组件,执行顺序如下: 1. from 的组件内守卫 beforeRouteLeave (如果配置了) 2.全局前置守卫 3.to 的路由独享守卫 (如果配置了) 4.to 的组件内守卫beforeRouteEnter (如果配置了) 5. 全局解析守卫 6.全局后置守卫 导航到了相同的组件,但是参数发生了变化执行顺序如下: 1.全局前置守卫 2.组件内守卫onBeforeRouteUpdater (如果配置了) 3. 全局解析守卫 4.全局后置守卫 注意点 在使用路由守卫时确保总是调用 next() 函数除非你明确想要阻止导航。如果守卫中包含异步操作确保在异步操作完成后再调用 next()否则可能会导致路由被阻止。多个守卫函数会按照注册的顺序依次执行afterEach 守卫会在所有守卫完成后执行。
http://www.hkea.cn/news/14569309/

相关文章:

  • 佛山网站建设佛山网络推广网站推广的搜索引擎推广
  • 建设网站不用模板可以吗什么网站做电子相册比加快
  • wordpress怎样搭建网站丝瓜app官网下载安装io
  • 网站建设在哪学设计网站欣赏
  • 网站设计英文翻译网站源码 酷
  • 电商网站建设培训班怎样建设公司网站
  • 全面依法治国建设法治中国优化的概念
  • 折扣网站模板大众网站平安建设之星
  • 怎么做能上谷歌网站郑州个人网站建设
  • 河南省和城乡建设厅网站首页wordpress缓存设置
  • 创新的中小型网站建设计算机网站设计怎么做
  • 浦东网站建设价格现在去长沙会被隔离吗
  • 做数据ppt模板下载网站买源码做网站
  • 网站源码资源网站运维工作内容
  • 360报危险网站网站开发和网络开发区别
  • 做跨境网站注意事项大气网络公司名字
  • 川畅咨询 做网站多少钱网站对接qq群 虚拟主机
  • 网站制作什么深圳社保
  • hishop网站搬家网站策划与建设实训心得
  • 湘潭seo网站优化网页界面设计以什么为载体
  • 什么是网站设计网络设计案例题
  • 贵阳论坛网站建设冠县网站建设多少钱
  • 美食网站设计方案嘉兴网站建设兼职
  • 做问卷的网站生成二维码滁州seo网站推广方案
  • 建站程序员招聘模板软件app
  • 视频直播网站开发 设计应聘软件开发工程师简历
  • 建设网站实训百度热搜高考大数据
  • 郑州大学科技园手机网站建设网站后台管理生成器
  • 怎么把网站列入黑名单平面设计接单兼职
  • 门户网站是什么o2o网站建设特色