【Vue3】编程式路由导航

【Vue3】编程式路由导航

  • 背景
  • 简介
  • 开发环境
  • 开发步骤及源码
  • 总结

背景

随着年龄的增长,很多曾经烂熟于心的技术原理已被岁月摩擦得愈发模糊起来,技术出身的人总是很难放下一些执念,遂将这些知识整理成文,以纪念曾经努力学习奋斗的日子。本文内容并非完全原创,大多是参考其他文章资料整理所得,感谢每位技术人的开源精神。

简介

本文介绍 Vue3 路由编程式导航的用法。

编程式路由导航可以通过代码实现页面跳转,与组件(<RouterLink>)声明式导航不同。编程式路由导航的灵活度更高。

开发环境

分类名称版本
操作系统WindowsWindows 11
IDEVisual Studio Code1.91.1

开发步骤及源码

1> 在 【Vue3】配置路由规则props 基础上,基于 params 传参,修改 src/pages/Warn.vue,使用编程式导航替代组件(<RouterLink>)声明式导航。

<template><div class="warn"><div class="timeline"><h3>告警发生时间</h3><ul><li v-for="warn in warns" :key="warn.id" @click="viewWarnDetail(warn)">{{ warn.time }}</li></ul></div><div class="warn-detail"><RouterView /></div></div>
</template><script setup lang="ts">
import { reactive } from 'vue'
import { useRouter, RouterView } from 'vue-router'const warns = reactive([{ "id": 9, "time": "2024-08-16 19:45:35", "msg": "服务XX升级失败回退", "level": 1 },{ "id": 8, "time": "2024-08-15 23:58:41", "msg": "服务XXCPU占用率超警戒值", "level": 2 },{ "id": 7, "time": "2024-08-15 20:10:00", "msg": "缓存使用量超警戒值XX", "level": 2 },{ "id": 6, "time": "2024-08-15 17:42:08", "msg": "服务XX无法恢复", "level": 1 },{ "id": 5, "time": "2024-08-15 15:14:39", "msg": "服务XX异常重启", "level": 2 },{ "id": 4, "time": "2024-08-13 01:05:17", "msg": "请求处理失败数超阈值XX", "level": 2 },{ "id": 3, "time": "2024-08-12 22:31:26", "msg": "服务XX持续上报告警", "level": 4 },{ "id": 2, "time": "2024-08-12 14:22:54", "msg": "消息队列积压XX", "level": 3 },{ "id": 1, "time": "2024-08-10 10:01:01", "msg": "请求处理平均时延超警戒值XX", "level": 2 }
])const router = useRouter()function viewWarnDetail(warn: any) {router.push({name: 'SystemWarnDetail',params: {time: warn.time,level: warn.level,msg: warn.msg}})
}
</script><style scoped lang="scss">
.warn {.timeline, .warn-detail {height: 420px;li {line-height: 35px;}}.timeline {border-right: 1px solid #aaa;width: 37%;float: left;}.warn-detail {width: 60%;float: right;}
}
</style>

2> 执行命令 npm run dev 启动应用,浏览器访问:http://localhost:5173/,点击左侧菜单进入 系统管理 页面,点击顶部 告警 按钮进入告警页面,点击告警页面左侧 告警发生时间 查看右侧的 告警详情,路由导航效果与组件(<RouterLink>)声明式导航一致。
在这里插入图片描述

总结

编程式路由导航实现:

  1. 在需要实现路由功能的组件(本例中的 Warn.vue)中引入 vue-routeruseRouter 方法;
    import { useRouter } from 'vue-router'
    
  2. 调用 useRouter() 获取路由器对象;
    const router = useRouter()
    
  3. 调用路由器对象的 push 方法实现路由导航功能,push 方法的参数与组件 <RouterLink>to 属性写法保持一致,即组件 <RouterLink>to 属性写法同样适用于路由器对象的 push 方法;
    router.push({name: 'SystemWarnDetail',params: {time: warn.time,level: warn.level,msg: warn.msg}})
    
  4. 本文只展示了路由 params 传参,query 传参写法基本类似。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/diannao/52385.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

微服务事务管理

1.分布式事务问题 1.1.本地事务 本地事务&#xff0c;也就是传统的单机事务&#xff0c;在传统数据库事务中&#xff0c;必须要满⾜四个原则&#xff1a; 1.2.分布式事务 分布式事务&#xff0c;就是指不是在单个服务或单个数据库架构下&#xff0c;产⽣的事务&#xff0c;例…

全感知、全覆盖、全智能的名厨亮灶开源了

简介 AI视频监控平台, 是一款功能强大且简单易用的实时算法视频监控系统。愿景在最底层打通各大芯片厂商相互间的壁垒&#xff0c;省去繁琐重复的适配流程&#xff0c;实现芯片、算法、应用的全流程组合&#xff0c;减少企业级应用约 95%的开发成本&#xff0c;在强大视频算法加…

数学基础(七)

一、熵 熵代表物体内部的混乱程度。&#xff08;一件事发生的不确定性&#xff09; 熵应用到分类任务中 二、激活函数 Sigmoid函数&#xff1a; Tanh函数&#xff1a; Relu函数&#xff1a; 三、回归分析 回归分析是寻找存在相关关系的变量间的数学表达式&#xff0c;并进行…

[数据集][目标检测]电力场景输电线异物检测数据集VOC+YOLO格式2060张1类别

数据集格式&#xff1a;Pascal VOC格式YOLO格式(不包含分割路径的txt文件&#xff0c;仅仅包含jpg图片以及对应的VOC格式xml文件和yolo格式txt文件) 图片数量(jpg文件个数)&#xff1a;2060 标注数量(xml文件个数)&#xff1a;2060 标注数量(txt文件个数)&#xff1a;2060 标注…

Spring Data JPA 中分页Pageable 的使用说明

我 | 在这里 ⭐ 全栈开发攻城狮、全网10W粉丝、2022博客之星后端领域Top1、专家博主。 &#x1f393;擅长 指导毕设 | 论文指导 | 系统开发 | 毕业答辩 | 系统讲解等。已指导60位同学顺利毕业 ✈️个人公众号&#xff1a;热爱技术的小郑。回复 Java全套视频教程 或 前端全套视频…

黑神话悟空什么配置可以玩?什么样的游戏本配置可以畅玩《黑神话:悟空》?黑神话悟空电脑配置推荐

相信不少游戏爱好者&#xff0c;近期被《黑神话&#xff1a;悟空》这款游戏刷屏了&#xff0c;预售开启不到5分钟&#xff0c;所有的产品即宣告售罄&#xff0c;预购3天销售额就破亿&#xff0c;并迅速登顶Steam全球榜。作为一款备受期待的国产3A游戏&#xff0c;以其精美的画面…

致远OA OCR票据识别组件

OCR票据识别 技术支持 技术大佬支持本文档 使用范围 任何票种信息&#xff0c;只要需要对接到oa底表中&#xff0c;就能够实现各种票种&#xff0c;各种字段的对接&#xff0c;包括票据识别&#xff0c;发票核验&#xff0c;适配各种票据 使用介绍 1 配置每种发票的ocr设…

【html+css 绚丽Loading】000016 四维玄方

前言&#xff1a;哈喽&#xff0c;大家好&#xff0c;今天给大家分享htmlcss 绚丽Loading&#xff01;并提供具体代码帮助大家深入理解&#xff0c;彻底掌握&#xff01;创作不易&#xff0c;如果能帮助到大家或者给大家一些灵感和启发&#xff0c;欢迎收藏关注哦 &#x1f495…

《牛虻》读后感

《牛虻》这本书是同事送的&#xff0c;最近换工作、搬家很多杂事&#xff0c;也就没有多少看书的兴致&#xff0c;所以断断续续看了快两周才看完。这是爱尔兰女作家埃塞尔丽莲伏尼契的代表作&#xff0c;在我国声名远播&#xff0c;是一代人的精神食粮。怀着崇敬的心情翻开这本…

数模小白国赛获奖技巧

一、团队分工合作的技巧&#xff08;三角形配合&#xff09; &#xff08;1&#xff09;队长要组织多沟通多交流&#xff1b; &#xff08;2&#xff09;建议定期开组会&#xff0c;互相讲授自己学习的东西&#xff0c;一人学习&#xff0c;三人收获。 二、AI辅助思路解析&am…

STM32——GPS模块(GY-NEO-6M)

1连接 1-1 使用 USB-TTL 工具&#xff0c;安装好驱动&#xff0c;可以在”设备管理器看到对应COM”按照如下链接测试模块&#xff1a; USB-TTL GPS 模块 3.3V--------------------------------->VCC GND------------------------------>GND RXD--------------------…

如何规避DDoS攻击带来的风险?服务器DDoS防御软件科普

DDoS攻击是目前最常见的网络攻击方式之一。其见效快、成本低的特点&#xff0c;使它深受不法分子的“喜爱”。对于未受保护的企业来说&#xff0c;每次DDoS攻击的平均成本为20万美元&#xff0c;当DDoS攻击汹涌而至&#xff0c;缺失详细的保护预案&#xff0c;企业很可能会陷入…

老师是怎么分班的?用什么工具比较好?

新学期伊始&#xff0c;校园里充满了生机与活力&#xff0c;但对老师们来说&#xff0c;这同样意味着一段忙碌的开始。他们不仅要处理日常的教学准备&#xff0c;还要面临一项看似简单却颇为繁琐的任务——给新生进行分班。分班完成后&#xff0c;老师们还需要将分班结果及时、…

大模型预训练中的数据处理及思考

大模型预训练需要从海量的文本数据中学习到充分的知识存储在其模型参数中。预训练所用的数据可以分为两类。一类是网页数据&#xff08;web data&#xff09;&#xff0c;这类数据的获取最为方便&#xff0c;各个数据相关的公司比如百度、谷歌等每天都会爬取大量的网页存储起来…

LLaVA 简介

好奇这张照片是在哪里拍摄的&#xff1f;问 LLaVA&#xff01;&#xff08;图片来自Pixabay的Guy Rey-Bellet&#xff09;。 LLaVA&#xff08;L arge L anguage 和V isual A ssistant 的缩写&#xff09;是一种很有前途的开源生成式人工智能模型&#xff0c;它复制了 OpenAI …

【数据结构】堆主要的应用场景

1. 堆排序 所谓堆排序&#xff0c;就是在堆的基础上进行排序。 在讲解堆排序之前&#xff0c;让我们先来回顾一下堆的概念&#xff0c; 1.1 大根堆和小根堆 堆是一种完全二叉树&#xff0c;它有两种形式&#xff0c;一种是大根堆&#xff0c;另外一种是小根堆。 大根堆&…

Java共享内容通信 VS Golang通信共享内存

接触的编程语言从C到Java再到现在Go&#xff0c;每个语言都有其独有特性&#xff0c;也具备共通之处。 最近在学习并发编程的时候&#xff0c;发现一个很有意思的点&#xff1a;Java基于共享共享内存通信&#xff0c;而Golang则是通过通信共享内存。为什么&#xff1f;下面我们…

主机监控与审计系统是什么?这个功能让您的效率翻倍!

天下之事&#xff0c;皆需明察秋毫&#xff0c;方能运筹帷幄&#xff0c;决胜千里。 于信息之海&#xff0c;主机者&#xff0c;犹若疆土之基石&#xff0c;承载着数据之重&#xff0c;运行着系统之脉。 然&#xff0c;世事如棋局局新&#xff0c;网络之域&#xff0c;暗流涌…

缓存之Tair

介绍 ​ 在Tair出现之前的很长一段时间里&#xff0c;像redis、memcache这些知名NoSql数据库是不支持分布式的&#xff0c;在这样的背景下&#xff0c;由淘宝网自主开发并在2010.6开源的一个高性能、高扩展、高可靠分布式缓存&#xff0c;类似map的key/value结构&#xff0c;在…

【算法】粒子群优化

一、引言 粒子群优化算法&#xff08;Particle Swarm Optimization, PSO&#xff09;是一种基于群体智能的优化技术&#xff0c;由Eberhart和Kennedy在1995年提出。它模拟鸟群觅食行为&#xff0c;通过个体与群体的协作来寻找最优解。通过模拟一群粒子的运动来寻找最优解。每个…