element-ui2.5版本下 el-tree根据不同数据动态切换defaultProps和noe-key绑定的值
时间: 2024-01-07 21:04:27 浏览: 189
在 Element UI 2.5 版本下,您可以通过监听 `current-change` 事件来实现根据不同数据动态切换 `defaultProps` 和 `node-key` 绑定的值。具体实现步骤如下:
1. 在 `el-tree` 组件中,通过 `props` 属性绑定 `defaultProps` 和 `node-key`,如下所示:
```html
<el-tree
:data="treeData"
:props="treeProps"
:node-key="treeNodeKey"
@current-change="handleCurrentChange"
></el-tree>
```
2. 在 `data` 中定义 `treeProps` 和 `treeNodeKey` 对象,并设置默认值,如下所示:
```js
data() {
return {
treeData: [
{
id: 1,
name: 'Node 1',
children: [
{
id: 2,
name: 'Node 1-1',
children: [
{
id: 3,
name: 'Node 1-1-1'
}
]
}
]
}
],
treeProps: {
children: 'children',
label: 'name'
},
treeNodeKey: 'id'
};
}
```
3. 在 `current-change` 事件回调中,动态设置 `treeProps` 和 `treeNodeKey` 对象,如下所示:
```js
methods: {
handleCurrentChange(node, oldNode) {
// 根据需要动态设置 treeProps 和 treeNodeKey 对象
if (node.id === 2) {
this.treeProps = {
children: 'child',
label: 'title'
};
this.treeNodeKey = 'nodeId';
} else {
this.treeProps = {
children: 'children',
label: 'name'
};
this.treeNodeKey = 'id';
}
}
}
```
在上述实现中,我们在 `current-change` 事件回调中,根据需要动态设置 `treeProps` 和 `treeNodeKey` 对象,从而实现了根据不同数据动态切换 `defaultProps` 和 `node-key` 绑定的值的需求。
阅读全文