Angular菜单项激活状态保持

news2024/10/7 6:41:26

菜单项激活状态保持

  • 需求描述
    • 详细需求
  • 解决方案

需求描述

如果有个需求,让你实现一个导航栏,点击不同菜单,图表会有不同变化,页面刷新后,该菜单状态仍旧保持,实现方法如下:

例图,有点丑,轻喷
在这里插入图片描述

详细需求

比方说,我们点击列表二,出现列表二的数据,同时我们点击刷新后,出现的还是被选中的列表二而不是默认的列表一。

解决方案

主要使用Angular当中的路由管理,给每个菜单在父级路由下重新设置四个子路由。然后刷新后,在构造函数中用split切割当前路由,切割符为/,拿到当前路由查看最后一个路由是什么字符串,最后绑定那个字符串对应的菜单索引值。
本期用到的技术栈:Angular、Ts。

  1. 设置子路由:找到router.module.ts文件下组件位置,并加上代码:
children:[
{
path:'table1',
component:父级组件名,
canActivate: [RouterGuard]
},
{
path:'table2',
component:父级组件名,
canActivate: [RouterGuard]
}
]。。。

2.找到要添加路由条件的组件,导入router路由方法。且加到constructor构造中

 import { ActivatedRoute, Router } from '@angular/router';
 constructor(private router:Router)

3.找到切换菜单函数,加入跳转路由方法

this.router.navigate(['/xxx/xxx', encodeURI(value)]);

其中value就是我们保存的切换菜单路由值,如table1,table2等。
4.在初始化函数ngInit中切割路由,再用length对路由进行长度判断,最后调用长度-1的索引值,for循环判断是否和菜单数组arr的value相等,相等则把对应id值赋值给菜单切换索引值index。

let temp= String(window.location.hash).split("/");
let len=temp.length
for(let i=0;i<arr.length;i++){
	if(temp[len-1]==arr[i].value){
	this.index=arr[i].value
}
}

然后就实现了,导航栏再刷新后不会重置且对应数据依然存在。

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

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

相关文章

中级程序员——vue3+js+git面试题

&#x1f642;博主&#xff1a;小猫娃来啦 &#x1f642;文章核心&#xff1a;vue3jsgit面试题 文章目录 vue3最大缺点和优点&#xff1f;vue3组合式里面&#xff0c;如何去调用子组件里面的方法&#xff1f;watch和watcheffect有什么区别&#xff1f;计算属性和watch的区别是什…

DOA估计算法——Capon算法

1.波速形成基本思想 在理解Capon算法之前&#xff0c;我们有必要先了解波束形成的基本思想以及原理到底是什么。这有助于我们更好的理解Capon算法的思想。 图 1 如图1展示了均匀阵列波束导向的示意图。图中wm表示加权值&#xff0c;波速形成(DBF)的基本思想就是将各阵元输出进…

5g路由器赋能园区无人配送车联网应用方案

随着人工智能、无人驾驶技术和自动化技术的不断进步&#xff0c;无人配送技术得到了极大的发展。园区内的物流配送任务通常是繁琐的&#xff0c;需要大量的人力资源和时间。无人配送技术能够提高配送效率并减少人力成本。无人配送车辆和机器人能够根据预定的路线和计划自动完成…

QT上位机串口控制MCU

&#x1f64c;秋名山码民的主页 &#x1f602;oi退役选手&#xff0c;Java、大数据、单片机、IoT均有所涉猎&#xff0c;热爱技术&#xff0c;技术无罪 &#x1f389;欢迎关注&#x1f50e;点赞&#x1f44d;收藏⭐️留言&#x1f4dd; 获取源码&#xff0c;添加WX 目录 前言1.…

做外贸如何开发客户?外贸客户开发六大方法一次性分享

客户是外贸业务的基础&#xff0c;有了客户才会有订单&#xff0c;因此开发客户永远是外贸人们重点关注的&#xff01;那作为外贸小白要通过哪些渠道找到客户&#xff1f;有哪些外贸客户开发方法可以入手呢&#xff1f;今天就跟着东哥一起来了解一下外贸客户开发都有哪六个方法…

二百零二、Hive——Hive解析JSON字段(单个字段与json数组)

一、目的 用Flume采集Kafka写入到Hive的ODS层在HDFS路径下的JSON数据&#xff0c;需要在DWD层进行解析并清洗 &#xff08;一&#xff09;Hive的ODS层建静态分区外部表 create external table if not exists ods_queue(queue_json string ) comment 静态排队数据表——静…

CAN总线负载及CANoe查看总线负载率

文章目录 一、什么是CAN总线的负载率&#xff1f;二、负载率计算三、CANoe查看总线负载率 一、什么是CAN总线的负载率&#xff1f; 一般业内对负载率的定义为&#xff1a;实际数据传输速率和理论上能达到的数据传输速率的比值。 传输速率一般是按秒来计算&#xff0c;数据传输…

Shell编程基础(3)- Shell的位置参数

Shell编程基础&#xff08;3&#xff09;- Shell的位置参数 Shell Scripting Essentials (3) – Locative Parameters of Shell Scripting 前文介绍过shell变量。当声明shell变量时&#xff0c;只需要在代码行写出变量名称即可;在输入行用read命令要求用户输入&#xff0c;在…

链表(一)----关于单链表的一切细节这里都有

一.链表 1 链表的概念及结构 概念&#xff1a;链表是一种物理存储结构上非连续、非顺序的存储结构&#xff0c;数据元素的逻辑顺序是通过链表中的指针链接次序实现的 。 现实中的链表结构 数据结构中的链表结构 1.链式结构在逻辑上是连续的&#xff0c;但在物理上不一定是…

数字化医学影像管理系统PACS源码

PACS系统&#xff0c;意为影像归档和通信系统。它是应用在医院影像科室的系统&#xff0c;主要的任务就是把日常产生的各种医学影像&#xff08;包括核磁&#xff0c;CT&#xff0c;超声&#xff0c;各种X光机&#xff0c;各种红外仪、显微仪等设备产生的图像&#xff09;通过各…

数据库选型与优化:策略与技巧的探讨

大家好&#xff0c;我是一名狂热的数据库程序员&#xff0c;最近鼓起勇气开始吐槽一下数据库&#xff0c;如有雷同&#xff0c;请对号入座。 名不副实的数据库类型 先说说最近的事&#xff0c;我们业务有很多图片要管理&#xff0c;老板说让我选个专业的图数据库&#xff0c;…

Leetcode—3.无重复字符的最长子串【中等】

2023每日刷题&#xff08;三十二&#xff09; Leetcode—3.无重复字符的最长子串 实现代码 class Solution { public:int lengthOfLongestSubstring(string s) {unordered_set<char> smap;int maxlen 0;int left 0;for(int i 0; i < s.size(); i) {while(smap.fi…

QT绘图设备

pixmap绘图设备在磁盘上进行绘图 通过pix.save将图片保存到E盘下 不是主要的绘画设备&#xff0c;可以将绘图指令保存 然后在下边可以调用重现绘图指令

Pikachu漏洞练习平台之SSRF(服务器端请求伪造)

注意区分CSRF和SSRF&#xff1a; CSRF&#xff1a;跨站请求伪造攻击&#xff0c;由客户端发起&#xff1b; SSRF&#xff1a;是服务器端请求伪造&#xff0c;由服务器发起。 SSRF形成的原因大都是由于服务端提供了从其他服务器应用获取数据的功能&#xff0c;但又没有对目标…

跨境电商测评新方案,安全可靠,高成功率

不管是做测评服务商还是卖家想给自己做测评&#xff0c;是否都为了如何搭建一个安全可靠的测评环境而苦恼呢&#xff1f;不知道如何搭建高成功率的真实安全买家环境苦恼&#xff1f;陈哥带你了解一种全新的解决方案&#xff0c;能够让你们的测评工作更加高效、安全、可靠&#…

简单介绍二分类问题评价指标

正确率(Accuracy) Accuracy ​(TP TN)/(TP TN FP FN)精准率(Precision) 记忆&#xff1a;在识别出某标签中正确的比例&#xff1b; 比如识别为某标签的一共有105个&#xff0c;其中有95个是识别对的&#xff0c;那Precision就是95/105&#xff1b; TP/(TPFP)召回率(Recall…

NJU操作系统公开课笔记(1)

目录 一.计算机系统概述 二.计算机硬件系统 三.计算机软件系统 四.计算机操作技术的发展 五.计算机OS 1.资源管理的角度 2. 程序控制的角度 3.OS控制计算机的角度 4.人机交互的角度 5.程序接口的角度 6.系统结构的角度 单道批处理系统 多道批处理系统 分时系统 …

Git 基本操作

目录 创建仓库命令 git init git clone 提交与修改 git add git status git diff git commit git reset git rm git mv git checkout git switch git restore 提交日志 git log git blame 远程操作 git remote git fetch git pull git push Git 的工作就…

Elasticsearch搜索分析引擎本地部署与远程访问

文章目录 系统环境1. Windows 安装Elasticsearch2. 本地访问Elasticsearch3. Windows 安装 Cpolar4. 创建Elasticsearch公网访问地址5. 远程访问Elasticsearch6. 设置固定二级子域名 Elasticsearch是一个基于Lucene库的分布式搜索和分析引擎&#xff0c;它提供了一个分布式、多…

深度学习(五)softmax 回归之:分类算法介绍,如何加载 Fashion-MINIST 数据集

Softmax 回归 基本原理 回归和分类&#xff0c;是两种深度学习常用方法。回归是对连续的预测&#xff08;比如我预测根据过去开奖列表下次双色球号&#xff09;&#xff0c;分类是预测离散的类别&#xff08;手写语音识别&#xff0c;图片识别&#xff09;。 现在我们已经对回…