elementui treekey=
ElementUI Tree 组件的 key 属性
在 ElementUI 的 Tree 组件中,key 是一个重要的属性,用于标识树节点的唯一性。它通常与 node-key 属性配合使用,确保节点的选中、展开等操作能够正确执行。
基本用法
在 Tree 组件的 data 数组中,每个节点对象可以包含 key 属性(或自定义的键名),用于唯一标识该节点。
<el-tree
:data="treeData"
node-key="id" <!-- 指定节点的唯一标识字段 -->
:props="defaultProps"
@node-click="handleNodeClick"
></el-tree>
对应的 JavaScript 数据示例:
data() {
return {
treeData: [
{
id: 1, // 使用 id 作为 key
label: '一级节点',
children: [
{
id: 2,
label: '二级节点'
}
]
}
],
defaultProps: {
children: 'children',
label: 'label'
}
}
}
关键属性说明
-
node-key- 指定节点数据中的唯一标识字段名(如
id),用于 Tree 组件的内部逻辑(如选中、展开)。 - 若不设置,可能会导致选中状态异常。
- 指定节点数据中的唯一标识字段名(如
-
props配置children: 指定子节点字段名(默认children)。label: 指定节点显示文本的字段名(默认label)。
-
动态更新
key- 如果节点数据动态变化,需确保
key唯一且稳定,否则可能导致状态丢失。
- 如果节点数据动态变化,需确保
常见问题
-
节点
key重复
若多个节点的key相同,Tree 组件可能无法正确区分节点,导致选中或展开行为异常。 -
动态加载数据时
key缺失
异步加载子节点时,需确保返回的数据包含key字段,否则可能影响交互逻辑。
通过合理设置 node-key 和节点数据的 key 字段,可以确保 Tree 组件的功能正常运行。







