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

Vue 子路由页面发消息给主路由页面 ,实现主页面显示子页面的信息

需求

子页面进入后,能在主页面显示子页的相关信息,比如说主页面的菜单激活的是哪个子页面的菜单项

如上图,当刷新浏览器页面时,让菜单的激活项仍保持在【最近浏览】。

实现方式:

在子页面的create事件中增加:

    created(){console.log("子路由打开=====", this.$route.path)this.$emit("childOpen", this.$route.path);},

主页面 router-view 中 增加:

      <router-view @childOpen="childOpen"></router-view>  ...childOpen(url) {console.log("url1====", url)if (url == "/recovery") {this.activeMenu = "recovery"}else if (url == "/history") {this.activeMenu = "history"}else if (url == "/person") {this.activeMenu = "person"}else if (url == "/collect") {this.activeMenu = "collect"}},

主页面菜单相关代码:

      <div class="menu"><div class="item pointer" :class="{'activeMenu' : activeMenu=='person'}"  @click="menuClick('person')"><img class="huiyuan-ico" src="@/assets/images/kongjian2.png"/><div>个人空间</div></div><div class="item pointer" :class="{'activeMenu' : activeMenu=='history'}"  @click="menuClick('history')"><img class="huiyuan-ico" src="@/assets/images/history2.png"/><div>最近浏览</div></div><div class="item pointer" :class="{'activeMenu' : activeMenu=='collect'}"  @click="menuClick('collect')"><img class="huiyuan-ico" src="@/assets/images/like2.png"/><div>我的收藏</div></div><div class="item pointer" :class="{'activeMenu' : activeMenu=='recovery'}"  @click="menuClick('recovery')"><img class="huiyuan-ico" src="@/assets/images/hsz2.png"/><div>收回站</div></div></div>

这样,当子路由的页面create后,就会告诉主页面,「我打开了」,主页面收到消息后,得到了具体的页面地址,通过地址判断是打开了哪个页面,从页主页面就激活具体的哪项菜单。

http://www.lryc.cn/news/255794.html

相关文章:

  • AR技术详解
  • h5或uniapp或微信小程序,实现左上角返回到指定页面,侧滑左滑返回指定页面,安卓物理返回键返沪指定页面解决思路的思考
  • 轻量封装WebGPU渲染系统示例<43>- PBR材质与阴影实(源码)
  • macOS Big Sur/Mac电脑安装vscode显示您没有权限来打开应用程序‘Visual Studio Code‘ 请联系您的电脑或网络管理员问题修复
  • jsp 如何批量改随机人名
  • android项目实战之编辑器集成
  • JAVA程序如何打jar和war问题解决
  • Microsoft 365 Copilot正式上线,如何稳定访问体验?
  • 【安卓】安卓xTS之Media模块 学习笔记(3) VTS测试
  • Go实现http同步文件操作 - 增删改查
  • Spring Boot整合 Spring Security
  • 浅谈低代码
  • Innodb-ruby深入探索Innodb存储结构
  • Echarts的使用 笔记
  • 信息系统工程的基本概念
  • SAP UI5 walkthrough step10 Descriptor for Applications
  • 打造专属小程序,乔拓云模板平台助力商家抢占先机
  • Vue2学习(组件的使用)
  • 基于Spring、SpringMVC、MyBatis开发的游乐场管理系统
  • 数据清洗、特征工程和数据可视化、数据挖掘与建模的应用场景
  • Qt简介、工程文件分离、创建Qt工程、Qt的帮助文档
  • 机器学习与低代码开发:创新驱动的双剑合璧
  • 企业博客SEO:优化SOP,助您提升搜索引擎可见性
  • [HITCON 2017]SSRFme perl语言的 GET open file 造成rce
  • 华为配置Smart Link主备备份示例
  • harmonyOS开发技巧(一)——封装hilog日志
  • npm、yarn常用命令
  • 编译和使用WPS-ghrsst-to-intermediate生成SST
  • 通过静态HTTP实现负载均衡
  • Python开发运维:Python常见异常类型