Vue中如何根据hash变化动态调整响应式菜单的高亮显示?

更新于
2026-09-27 02:28:36
0阅读来源:SEO基础
  • 内容介绍
  • 文章标签
  • 相关推荐

本文共计805个文字,预计阅读时间需要4分钟。

Vue中如何根据hash变化动态调整响应式菜单的高亮显示?

场景+Vue+Element实现管理页面菜单栏,点击菜单时+router+修改hash访问不同子组件。但修改hash时,菜单栏展开状态和highlight状态不会同步,需要手动实现。尝试尝试看,第一反应是通过'hash'实现。

情景

Vue+Element 实现管理页面菜单栏,

点击菜单时 router 改变 hash 访问不同子组件。

但是改变 hash 时菜单栏展开状态和 highlight 并不会同步,

需要手动实现。

Try Try See

第一反应是通过 onhashchange 监听 hash 的变化,

讲location.hash.slice(2) 推给 menu 的default-active 即可。

此时通过手动输入 url 或者前进后退时均可正常加载对应状态,但是通过组件中的 link 访问时,menu 的状态没有改变。

Vue中如何根据hash变化动态调整响应式菜单的高亮显示?

加入 alert 验证发现没有触发 hashchange。

阅读全文

本文共计805个文字,预计阅读时间需要4分钟。

Vue中如何根据hash变化动态调整响应式菜单的高亮显示?

场景+Vue+Element实现管理页面菜单栏,点击菜单时+router+修改hash访问不同子组件。但修改hash时,菜单栏展开状态和highlight状态不会同步,需要手动实现。尝试尝试看,第一反应是通过'hash'实现。

情景

Vue+Element 实现管理页面菜单栏,

点击菜单时 router 改变 hash 访问不同子组件。

但是改变 hash 时菜单栏展开状态和 highlight 并不会同步,

需要手动实现。

Try Try See

第一反应是通过 onhashchange 监听 hash 的变化,

讲location.hash.slice(2) 推给 menu 的default-active 即可。

此时通过手动输入 url 或者前进后退时均可正常加载对应状态,但是通过组件中的 link 访问时,menu 的状态没有改变。

Vue中如何根据hash变化动态调整响应式菜单的高亮显示?

加入 alert 验证发现没有触发 hashchange。

阅读全文