feat(@vben/web-antd): 区域树默认展开园区和楼栋节点
This commit is contained in:
@@ -117,6 +117,10 @@ async function loadTree() {
|
||||
);
|
||||
areaList.value = data;
|
||||
areaTree.value = handleTree(data, 'id', 'parentId', 'children');
|
||||
// 默认展开到楼层:展开 PARK 和 BUILDING 节点
|
||||
expandedKeys.value = data
|
||||
.filter((a) => a.areaType === 'PARK' || a.areaType === 'BUILDING')
|
||||
.map((a) => a.id!);
|
||||
} catch (error) {
|
||||
console.error('获取区域树失败', error);
|
||||
} finally {
|
||||
@@ -159,6 +163,9 @@ function getDescendantIds(id: number): number[] {
|
||||
return result;
|
||||
}
|
||||
|
||||
/** 展开的节点 key 列表 */
|
||||
const expandedKeys = ref<number[]>([]);
|
||||
|
||||
/** 暴露刷新方法和路径查询供父组件调用 */
|
||||
defineExpose({ refresh: loadTree, getAreaPath, getDescendantIds, getAreaName });
|
||||
|
||||
@@ -183,7 +190,7 @@ onMounted(loadTree);
|
||||
v-if="areaTree.length > 0"
|
||||
class="pt-2"
|
||||
:tree-data="areaTree"
|
||||
:default-expand-all="true"
|
||||
v-model:expanded-keys="expandedKeys"
|
||||
:checkable="checkable"
|
||||
:checked-keys="checkable ? internalCheckedKeys : undefined"
|
||||
:selected-keys="selectedKeys"
|
||||
|
||||
Reference in New Issue
Block a user