vue项目导航菜单问题

目标:横向菜单点击跳转,颜色变换,刷新可保持状态

  1. // 模板template中通过循环菜单列表生成,动态类名改变颜色
  2. <li
  3. v-for="(item, index) in navList"
  4. :key="index"
  5. v-text="item.name"
  6. :class="{ 'active-color': index === currentIndex }"
  7. @click="navigate(item.path, index)"
  8. ></li>
  9. data() {
  10. return {
  11. navList: [
  12. {
  13. name: "777",
  14. path: "/intelligent",
  15. },
  16. {
  17. name: "666",
  18. path: "/malfunction",
  19. },
  20. {
  21. name: "555",
  22. path: "/status",
  23. },
  24. {
  25. name: "444",
  26. path: "/system",
  27. },
  28. {
  29. name: "333",
  30. path: "/three",
  31. },
  32. ],
  33. // 保存当前的菜单的下标,每次点击切换菜单改变,并且刷新时组件加载也要改变
  34. currentIndex: 0,
  35. }
  36. methods: {
  37. navigate(path, index) {
  38. this.currentIndex = index;
  39. this.$router.push(path);
  40. },
  41. }
  42. mounted() {
  43. // 路由中配置meta属性,保证每次刷新都能拿到当前的菜单下标
  44. this.currentIndex = this.$route.meta.index;
  45. },
  46. // 路由表
  47. [
  48. {
  49. path: "intelligent",
  50. name: "work",
  51. component: () => import("@/views/zltc/intelligentwork/IndexItem.vue"),
  52. meta: {
  53. index: 0,
  54. },
  55. },
  56. {
  57. path: "malfunction",
  58. name: "malfunction",
  59. component: () =>
  60. import("@/views/zltc/malfunctiondiagnosis/IndexItem.vue"),
  61. meta: {
  62. index: 1,
  63. },
  64. },
  65. .......
  66. ],
总结:
  1. 通过循环下标标记每个菜单

  2. 动态类名对比菜单的下标和自己当前的下标

  3. 点击更改当前下标,组件加载更改当前下标(配合路由表meta属性)

vue项目导航菜单实现的更多相关文章

  1. VUE项目二级菜单刷新时404 nginx

    原因:vue项目的路径时虚拟路径,并不存在,所以用nginx去请求请求不到,所以vue项目做了两部调整: 1.所有的请求后端接口地址前端写死 2.nginx里把所有的接口转发后端删掉,并添加以下内容 ...

  2. vue项目简单菜单排序

    功能:拖拉后,数据重组,然后返回数组给后台处理 代码如下: <template> <el-dialog title="菜单排序" :close-on-click- ...

  3. vue+element UI递归方式实现多级导航菜单

    介绍 这是一个是基于element-UI的导航菜单组件基础上,进行了二次封装的菜单组件,该组件以组件递归的方式,实现了可根据从后端接收到的json菜单数据,动态渲染多级菜单的功能. 使用方法 由于该组 ...

  4. vue+element UI以组件递归方式实现多级导航菜单

    介绍 这是一个是基于element-UI的导航菜单组件基础上,进行了二次封装的菜单组件,该组件以组件递归的方式,实现了可根据从后端接收到的json菜单数据,动态渲染多级菜单的功能. 使用方法 由于该组 ...

  5. Vue-cli项目与element导航菜单控件的结合使用以及遇到的问题

    1.基本使用 第一种常用写法:导航菜单与 router-view 的配合使用 将所用的导航菜单数据编写成一个数组的形式,提高维护性: 在utils工具文件夹中建立utils.js文件: import ...

  6. AntDesign vue学习笔记(五)导航菜单动态加载

    一般的后台系统都有一个树形导航菜单,具体实现如下,主要参考https://my.oschina.net/u/4131669/blog/3048416 "menuList": [ { ...

  7. [vue ]滚动视图解决ElementUI NavMenu 导航菜单过长显示的问题

    记录一下工作 需求 导航菜单过长的时候会溢出,需要一个像 Tabs 标签页一样的滚动视图容器,可以左右滚动内部视图. 解决方法 由于时间问题,所以直接将 Tabs 源码抽取出来使用. 这里要做一些特殊 ...

  8. element-ui和npm、webpack、vue-cli搭建Vue项目

    一.element-ui的简单使用 1.安装 1. npm 安装 推荐使用 npm 的方式安装,它能更好地和 webpack 打包工具配合使用. npm i element-ui -S 2. CDN ...

  9. python 全栈开发,Day58(bootstrap组件,bootstrap JavaScript 插件,后台模板,图表插件,jQuery插件库,Animate.css,swiper,运行vue项目)

    一.bootstrap组件 无数可复用的组件,包括字体图标.下拉菜单.导航.警告框.弹出框等更多功能. 组件和插件的区别? 插件:一个功能,比如js文件 组件:html css js 组件包含插件 面 ...

随机推荐

  1. nacos 详细介绍(二)

    五.nacos的namespace和group namespace:相当于环境,开发环境 测试环境 生产环境 ,每个空间里面的配置是独立的默认的namespace是public, namespace可 ...

  2. HDD线上沙龙·创新开发专场:多元服务融合,助力应用创新开发

    5月24日,由华为开发者联盟主办的HUAWEI Developer Day(华为开发者日,简称HDD)线上沙龙·创新开发专场在华为开发者学堂及各大直播平台与广大开发者见面.直播内容主要聚焦Harmon ...

  3. springSecurity + jwt + redis 前后端分离用户认证和授权

    记录一下使用springSecurity搭建用户认证和授权的代码... 技术栈使用springSecurity + redis + JWT + mybatisPlus 部分代码来自:https://b ...

  4. python基础学习10

    python基础学习 内容概要 文件内光标的移动 文件数据修改 函数简介 函数语法结构 内容详情 文件内光标的移动 with open(r'路径','r',encoding='utf8') as f: ...

  5. 一个全新的Vue拖拽特性实现:“移动”部分

    关于拖拽 CabloyJS提供了完备的拖拽特性,可以实现移动和调整尺寸两大类功能,这里对移动的开发进行阐述 关于调整尺寸的开发,请参见:拖拽:调整尺寸 演示 开发步骤 下面以模块test-party为 ...

  6. VBA驱动SAP GUI实现办公自动化(一)

    小爬之前写过一系列Python驱动SAP GUI实现办公自动化的文章,其实如果我们的实际业务不是太复杂,且我们对VBA语法比较熟悉的话,我们完全可以借助Excel VBA来驱动SAP GUI做很多自动 ...

  7. 使用PowerShell压缩和解压ZIP包

    更新记录 本文迁移自Panda666原博客,原发布时间:2021年7月13日. 解压ZIP包 使用PowerShell的Expand-Archive命令.PowerShell官方文档地址. 命令格式: ...

  8. 网心云在PVE下三种磁盘IO模式(No cache,Write through,Write back)选择与优化指南

    ---------------------------------------------------------------------------------------------------- ...

  9. 【Redis】事件驱动框架源码分析(多线程)

    IO线程初始化 Redis在6.0版本中引入了多线程,提高IO请求处理效率. 在Redis Server启动函数main(server.c文件)中初始化服务之后,又调用了InitServerLast函 ...

  10. RPA 快手自动上传机器人

    1.打开账号Cookie预存表格 2.机器人自动登录账号 3.机器人开始按照预设视频位置开始自动上传视频 4.机器人开始自动填写视频相关信息内容 5.完成后,可自动切换下一个账号继续上传