今日讲讲导航守卫

2024-03-27 00:36
文章标签 讲讲 今日 导航 守卫

本文主要是介绍今日讲讲导航守卫,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

导航守卫就是路由跳转过程中的一些钩子函数,比如制作登录权限验证
导航守卫有三种: 全局的 , 单个路由独享的 , 组件级的

目录

路由独享守卫


路由独享守卫

写在每个路由配置的对象里
beforeEnter 进入前;应用场景:某个页面有单独的权限限制
不传或true代表允许通过
false代表不允许通过
字符串或对象,代表重定向到某一页面
{
path: '/about',
name: 'about',
component: about,
beforeEnter: (to, from) => {
return '/login';
}
},

全局守卫

写在路由实例上
beforeEach 进入前;应用场景:登录拦截
router.beforeEach((to, from) => {
// 获取uid等判断依据数据
let uid = 10
// 判断去的页面不是登录页且uid不存在
if (uid) {
if (to.path == '/login') {
// 如果登录了,且去的是登录页,重定向到首页
return '/'
} else {
return '/login';
}
}
})
beforeResolve 解析守卫,在所有组件内守卫和异步路由组件被解析之后调用
afterEach 后置守卫,对于分析、更改页面标题、声明页面、记录日志

组件级守卫

写在页面中
onBeforeRouteEnter 进入前
onBeforeRouteUpdate 在当前路由改变,但是该组件被复用时调用
onBeforeRouteLeave 在导航离开渲染该组件的对应路由时调用;可以在离开前进行校验
<script setup>
import { useRouter, onBeforeRouteLeave } from 'vue-router'
onBeforeRouteLeave(() => {
const answer = window.confirm(
'你真的想离开吗?您有未保存的更改!'
)
// 取消导航并停留在同一页面上
if (!answer) return false
})
</script>

这篇关于今日讲讲导航守卫的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/850383

相关文章

js+css二级导航

效果 <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN""http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"><html xmlns="http://www.w3.org/1999/xhtml"><head><meta http-equiv="Con

ArkTS开发系列之导航 (2.7动画)

上篇回顾: ArkTS开发系列之导航 (2.6 图形) 本篇内容:动画的学习使用 一、 知识储备 1. 布局更新动画 包含显式动画(animateTo)和属性动画(animation) 动画类型名称特点显式动画闭包内的变化都会触发动画执行, 可以做较复杂的动画属性动画属性变化时触发动画执行, 设置简单 说白了,显示动画就是靠闭包事件触发,属性动画是挂在组件身上的属性变化触发 显式动画

react实现导航守卫

React本身并没有像Vue那样的直接名为“导航守卫”的概念,但在React Router中,我们可以通过特定的方法和技术来模拟和实现类似的功能。以下是对React Router中模拟导航守卫的详解: 1. 导航守卫的概念 导航守卫:在路由切换之前执行的钩子函数,用于控制路由的跳转。在Vue Router中,这通常用于路由鉴权,即在路由跳转之前判断用户是否有权访问目标页面。React中的模拟:

为导航栏的li加上.selected样式

为导航栏的li加上.selected样式 HTML <!DOCTYPE html><html lang="zh-CN"><head><meta charset="UTF-8"><title>myNav</title><link rel="stylesheet" type="text/css" href="main.css"></head><body><div class="nav-wr

如何解决vue中的路由守卫失效问题

引言 1. 路由守卫简介 路由守卫是前端开发中一个至关重要的概念,特别是在使用单页应用(SPA)框架如React、Vue或Angular时。它们充当了SPA中的“门卫”,控制着用户对不同页面的访问权限。路由守卫的核心功能是确保用户在访问特定页面之前满足一定的条件,比如登录状态、权限验证等。 2. 路由守卫的重要性 安全性:防止未授权访问敏感页面。用户体验:根据用户状态引导至合适的页面,比如

Vue80-全局路由守卫:前置、后置

一、路由守卫的定义  二、需求  在第三步,做校验! 三、代码实现 3-1、前置路由守卫  注意,此时就不能将router一开始就暴露出去了! to和from是路由组件的信息。 写法一:  写法二: 缺点:若是路由判断很多,此写法会很繁琐。 写法三:路由元信息:程序员自定义的信息   放在需要校验的路由规则

ios设置导航栏背景图片、返回按钮背景、标题颜色等等

在ios程序的编写过程中,很多时候我们都要自定义自己的UI,而不是使用cocoatouch中原有的。说起对UI的更改,很多时候我们只是修改一下原有UI的背景啊,颜色之类的,以达到新的要求。     在此之前呢,设置UINavigationController的背景颜色,我会使用如下的代码: 首先看.h文件 #import <UIKit/UIKit.h>@interface UI

【2024.6.23】今日 IT 速递 | 亚布力创新年会热点新闻盘点

人不走空                                                                              🌈个人主页:人不走空       💖系列专栏:算法专题 ⏰诗词歌赋:斯是陋室,惟吾德馨 目录       🌈个人主页:人不走空       💖系列专栏:算法专题 ⏰诗词歌赋:斯是陋

2024年6月23日 十二生肖 今日运势

小运播报:2024年6月23日,星期日,农历五月十八&nbsp;(甲辰年庚午月戊午日),法定节假日。今天国际奥林匹克日,坚不可摧的意志,披荆斩棘的豪情,永远值得拥有! 红榜生肖:狗、羊、虎 需要注意:马、牛、鼠 喜神方位:东南方 财神方位:正北方 宜:无 忌:结婚、订婚、搬家、出行、宴会、开业、交易、签约、解除、置业、纳财、动土、兴造、装修 幸运数字:4、5 幸运颜色:银色、黄

Vue82-组件内路由守卫

一、组件内路由守卫的定义  在一个组件里面去写路由守卫,而不是在路由配置文件index.js中去写。 此时,该路由守卫是改组件所独有的! 只有通过路由规则进入的方式,才会调这两个函数,否则,若是只是用<About/>标签进入的方式,是不会调用这两个函数的。 二、组件内路由守卫的代码实现  三、小结