elementPlus的可选择树形在选中时自动展开其子节点(子节点全部选中或者不做勾选),该怎么实现?

新手上路,请多包涵

尝试了在tree标签里面添加ref属性获取整个组件的数据,但是在tree的store里面的nodesMap对象里面只有在初始化数据时选中或者半选中的数据,控制expanded的值不能达到想要的效果

 <el-dialog ref="dialogEditMenuForm" draggable :title="editMenuFormTitle+'权限'" append-to-body v-model="treeDialogShow" width="40%">
      <el-tree
          :data="tableDataMenus"
          ref="tableDataMenusRef"
          show-checkbox
          node-key="id"
        
          :default-checked-keys=cheackKeys
          :props="defaultProps"
          @check-change="treeChange"
        />

      <template #footer>
        <div class="dialog-footer">
          <el-button @click="treeDialogShow = false">取 消</el-button>
          <el-button type="primary" @click="treeEditMeny()">确 定</el-button>
        </div>
      </template>
    </el-dialog>
function treeChange(nodeData,nodeSelected){
  console.log('nodeData' ,nodeData);
  console.log('nodeSelected' ,nodeSelected);
  let tree =tableDataMenusRef.value
  let node=tree.getCheckedNodes(nodeData.Id)
  // tableDataMenusRef.value=tableDataMenusRef.value.store.nodesMap.forEach(el=>{el.expanded=nodeSelected})
  console.log('stroe',tableDataMenusRef.value.store.nodesMap);
  for(let key in tableDataMenusRef.value.store.nodesMap){
    console.log('key',tableDataMenusRef.value.store.nodesMap[key].expanded=nodeSelected);
  }
  console.log("ref",tableDataMenusRef.value);
  console.log('node',node);

}
阅读 2.4k
撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
推荐问题