美文网首页
iview 动态渲染menu时active-name无效的问题

iview 动态渲染menu时active-name无效的问题

作者: 小棋子js | 来源:发表于2020-05-29 16:16 被阅读0次

场景:Menu组件设置active-name属性无效。
原因:因为active-name 生效之后,menu是从接口请求回来的。这时候this.menus 被重新赋值,触发数据变更事件,menu组件又重新渲染。active-name应该只在初次加载时执行一次,这个目前只是猜测
处理:
Menu methods:
方法名 说明 参数
updateOpened 手动更新展开的子目录,注意要在 nextTick 里调用 无 updateActiveName 手动更新当前选择项,注意要在nextTick 里调用 无         
1、给Menu组件绑定ref ,例如side_menu;
2、menu列表更新时,手动更新

 updated() {
      this.$nextTick(() => {
          this.$refs.side_menu.updateOpened()
          this.$refs.side_menu.updateActiveName()
      })
    },

相关文章

网友评论

      本文标题:iview 动态渲染menu时active-name无效的问题

      本文链接:https://www.haomeiwen.com/subject/nnxfzhtx.html