feat(W2): 栏目树修订-虚拟根(学校名/子站名)+工具栏收敛4按钮+高度链修复,T-W2-01..10 绿 44/44

This commit is contained in:
chenxing
2026-09-08 15:14:09 +08:00
parent 1e887906eb
commit 7b99ec398d
6 changed files with 224 additions and 36 deletions
+4 -1
View File
@@ -19,6 +19,7 @@
import { ref, nextTick, useTemplateRef } from "vue";
import { cloneDeep } from "lodash";
import MyTree from '@/components/MyTree.vue'
import { initialSelectId } from '@/utils/categoryTree'
const DEFAULT_CACHE_KEY = 'cms.category-tree.selected-node'
@@ -112,10 +113,12 @@ function resolveInitialSelectId(list: any[], preferredId?: number | null) {
const preferred = findNodeById(list, preferredId);
if (preferred) return preferred.id;
// W2 虚拟根(D5):默认下钻到虚拟根下首个真实栏目,绝不落到根 id=0;
// 缓存恢复优先于下钻(B5:刷新后仍选中缓存的 REAL 节点)
const cached = findNodeById(list, getCachedSelectedNodeId());
if (cached) return cached.id;
return list[0]?.id ?? null;
return initialSelectId(list) ?? list[0]?.id ?? null;
}
async function loadTree(preferredId?: number | null) {
+8
View File
@@ -372,4 +372,12 @@ watch(
color: #999;
font-size: 14px;
}
/* W2(D6):左树高度链修复——UserBase App.vue:222-224 同款覆盖式。
layout.css 全局 .main-wrapper 只有 min-height:100% 无 height,
子级 .tree-wrapper{height:100%} 因父链高度 auto 解析失败,栏目树缩在一起。
scoped 生效前提:.base-wrap-main/.main-wrapper 是本组件模板内节点(:348-349) */
.base-wrap-main .main-wrapper {
height: 100%;
}
</style>