//收起所有節點 setCheckedKeys() { this.defaultExpand = false; for (var i = 0; i < this.$refs.tree.store._getAllNodes().length; i++) { if (this.$refs.tree.store._getAllNodes()[i].id !== 1) { this.$refs.tree.store._getAllNodes()[i].expanded = this.defaultExpand; } } }, setCheckedNodes() { this.defaultExpand = true; //展開所有節點 for (var i = 0; i < this.$refs.tree.store._getAllNodes().length; i++) { this.$refs.tree.store._getAllNodes()[i].expanded = this.defaultExpand; } }
<el-tree :data="deptData" :props="defaultProps" v-loading="listLoading" :default-expanded-keys="idArr" @@node-click="handleNodeClick" node-key="Id" :expand-on-click-node="true" :filter-node-method="filterNode" :render-content="renderContent" ref="tree"> </el-tree>
參見網上寫法:
<div> <iclass="arrow-down el-icon-arrow-down" @click="allExpand(true)" title="展開所有"></i> <iclass="arrow-down el-icon-arrow-up" @click="allExpand(false)" titie="收縮所有"></i> </div> <el-tree :data="AiditReportData" node-key="id" ref="selectTree" :default-expand-all="true" :default-expanded-keys="defaultExpandArr" > upAll () { // 全部展開 遍歷變成true let self = this; // 將沒有轉換成樹的原數據 let treeList = this.sourceData; for (let i = 0; i < treeList.length; i++) { // 將沒有轉換成樹的原數據設置key為... 的展開 self.$refs.selectTree.store.nodesMap[treeList[i].id].expanded = true } }, public allExpand(isExpand: boolean) { const that: any = this; const treeList = this.AiditReportData; console.log('isExpand', isExpand); for (let i = 0; i < treeList.length; i++) { that.$refs.selectTree.store.nodesMap[treeList[i].id].expanded = isExpand; } } //原文:https://www.cnblogs.com/ll15888/p/12002745.html
this.$refs.tree.store
this.$refs.tree.store.currentNode = null
Object.keys(this.$refs.tree.store.nodesMap).map((key, index) => {
this.$refs.tree.store.nodesMap[key].checked = false
this.$refs.tree.store.nodesMap[key].expanded = false
})