vue2 vue-jstree v-model帮绑定已选择
时间: 2023-07-28 13:44:04 浏览: 186
vue中v-model对select的绑定操作
vue-jstree提供了一个`selected`属性,可以用`v-model`进行双向绑定,以获取或设置已选择节点的ID数组。以下是一个示例:
```
<template>
<div>
<div id="jstree"></div>
<p>已选节点ID:{{ selected }}</p>
</div>
</template>
<script>
import 'jstree/dist/themes/default/style.css';
import 'jstree';
export default {
data() {
return {
selected: []
};
},
mounted() {
$('#jstree').jstree({
'core': {
'data': [
{
'text': 'Node 1',
'children': [
{ 'text': 'Child 1', 'id': '1-1' },
{ 'text': 'Child 2', 'id': '1-2' }
]
},
{ 'text': 'Node 2', 'id': '2' }
]
},
'checkbox': {
'three_state': false
},
'plugins': ['checkbox']
}).on('changed.jstree', (e, data) => {
this.selected = data.selected;
});
},
beforeDestroy() {
$('#jstree').jstree('destroy');
}
}
</script>
```
在这个示例中,我们定义了一个`selected`属性,并通过`v-model`将其绑定到jstree的`selected`属性上。在jstree的`changed.jstree`事件中,我们将已选择的节点ID数组赋值给`selected`属性,这样我们就可以在模板中显示它们。注意,我们必须在组件销毁之前销毁jstree实例,以避免内存泄漏。
阅读全文