函数: searchTreeList()
ts
function searchTreeList<T>(
data,
keyword,
name,
children?): T[];定义于: tree.ts:206
树形数据模糊搜索:父级命中则整枝保留(含全部子级);仅子级命中则保留父级并只带上命中的子级。
类型参数
| 类型参数 | 默认类型 |
|---|---|
T | any |
参数
| 参数 | 类型 | 描述 |
|---|---|---|
data | T[] | 全部数据 |
keyword | T[keyof T] | 用于模糊查询的关键字(在 name 字段上做 includes 包含匹配;数字字段会先转成字符串) |
name | keyof T | 参与匹配的键名 |
children | keyof T | 子级集合的键名,默认 'children' |
返回值
T[]
过滤后的新树形数组
备注
模糊匹配(子串 includes);若需要「值严格相等」的精确过滤请改用 filterTreeList。
示例
ts
const list = [
{
name: 'option1', id: 1,
children: [
{ name: 'option1.1', id: 3 },
],
},
{ name: 'option2', id: 2 },
]
searchTreeList(list, '.1', 'name', 'children')
// => [{ name: 'option1', id: 1, children: [{ name: 'option1.1', id: 3 }] }]