最近用了几次 el-tree树组件 发现即使通过ref或者reactive 绑定数据,数据更新后el-tree 组件未渲染更新?最后还是v-if 手动强制重构; 大概率组件只能初始化重构配置属性数据才能更新:
eg: default-expand-all 响应式展开与收起 动作
// 1 html
<div class="branch_left_tree" v-if="isOpenAllLoading">
<el-tree
style="width: 100%"
:data="BranchLists"
:default-expand-all="isOpenAllBranch"
node-key="id"
:default-expanded-keys="[101]"
:current-node-key="101"
/>
</div>
<script setup lang="tsx">
const isOpenAllLoading = ref(true)
const isOpenAllBranch = ref(false)
// 动态配置是否展开树无响应 无脑if 跟新
// 折叠收起
const handeleOpenTBtn = () => {
isOpenAllLoading.value = false
isOpenAllBranch.value = !isOpenAllBranch.value
// 异步一下展示
setTimeout(() => {
isOpenAllLoading.value = true
})
}
</script>
挖个坑:具体影响后面慢慢看 先继续搬砖