解决ElementUi树结构默认选中的事件
解决ElementUi树结构默认选中的事件
一个后台管理系统,使用了ElementUi的el-tree组件,并且带有选中效果的,当对数据进行修改操作时,需要将原有的选中数据渲染到树结构中,data以及default-checked-keys的数据都是从后台获取的数据,所以在进行修改操作时,并没有按照预期的能把选中的效果体现出来,后来一想才发现,原来渲染el-tree前,就得拿到default-checked-keys的选中数据,否则默认选中状态就不会得到渲染;
<el-tree
v-if="isShowTree"
:data="zTree"
:props="defaultProps"
:default-checked-keys="defaultTree"
node-key="cDptCde"
ref="tree"
show-checkbox
@check-change="handledeptNodeClick">
</el-tree>
于是,我使用了一个isShowTree的状态,当获取到数据详情时,并且拿到default-checked-keys后,设置isShowTree=true,如果有使用到props时属性时,一定要等获取到data数据时再渲染el-tree,也就是说要同时拿到data数据&&default-checked-keys数据时才能设置isShowTree便可完美的渲染出带选中效果的树形结构,如果有遇到这个问题解决不了的,可以试一试!
/*从后台获取递归数据*/
if (haveData.value.length >= 0 && tableData.value.length >= 0) {
isShowTree.value = true;
}