fix: 修复学校管理区域筛选树无数据问题
## Bug描述
学校管理页面左侧区域筛选树显示空白,无任何区域节点
## 问题原因
前端el-tree组件配置的字段名与后端API返回的字段名不匹配:
- 前端期望:regionName, regionId
- 后端返回:name, id
## 修复内容
### 1. 修正el-tree属性配置
```vue
<!-- 修复前 -->
:props="{ label: 'regionName', children: 'children' }"
node-key="regionId"
<!-- 修复后 -->
:props="{ label: 'name', children: 'children' }"
node-key="id"
```
### 2. 修正过滤方法
```javascript
// 修复前
return data.regionName.includes(value)
// 修复后
return data.name.includes(value)
```
### 3. 修正节点点击事件
```javascript
// 修复前
selectedRegionId.value = data.regionId
// 修复后
selectedRegionId.value = data.id
```
## 验证结果
- ✅ 区域API正常:/api/region/tree (200 OK, 4条数据)
- ✅ 区域树显示:湖北省->武汉市->武昌区等
- ✅ 关键字过滤正常
- ✅ 节点点击事件正常
---
作者:湖北新华业务中台研发团队
This commit is contained in:
parent
7f6d6d038a
commit
cd81cd01ba
|
|
@ -17,8 +17,8 @@
|
||||||
<el-tree
|
<el-tree
|
||||||
ref="treeRef"
|
ref="treeRef"
|
||||||
:data="regionTree"
|
:data="regionTree"
|
||||||
:props="{ label: 'regionName', children: 'children' }"
|
:props="{ label: 'name', children: 'children' }"
|
||||||
node-key="regionId"
|
node-key="id"
|
||||||
highlight-current
|
highlight-current
|
||||||
:filter-node-method="filterNode"
|
:filter-node-method="filterNode"
|
||||||
@node-click="handleNodeClick"
|
@node-click="handleNodeClick"
|
||||||
|
|
@ -108,7 +108,7 @@ watch(treeFilterText, (val) => {
|
||||||
// 树节点过滤
|
// 树节点过滤
|
||||||
const filterNode = (value, data) => {
|
const filterNode = (value, data) => {
|
||||||
if (!value) return true
|
if (!value) return true
|
||||||
return data.regionName.includes(value)
|
return data.name.includes(value)
|
||||||
}
|
}
|
||||||
|
|
||||||
// 获取区域树
|
// 获取区域树
|
||||||
|
|
@ -121,7 +121,7 @@ const getRegionTree = async () => {
|
||||||
|
|
||||||
// 树节点点击
|
// 树节点点击
|
||||||
const handleNodeClick = (data) => {
|
const handleNodeClick = (data) => {
|
||||||
selectedRegionId.value = data.regionId
|
selectedRegionId.value = data.id
|
||||||
}
|
}
|
||||||
|
|
||||||
// 新增学校
|
// 新增学校
|
||||||
|
|
|
||||||
Loading…
Reference in New Issue