vue-treeselect 的基本使用

本文介绍了如何在Vue项目中使用vue-treeselect插件实现树形下拉菜单,包括安装步骤、引入组件以及提供代码片段展示了如何处理选择和取消操作。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

1. 效果展示

请添加图片描述

2. 安装 插件

vue-treeselect是一个树形的下拉菜单,至于到底有多少节点那就要看你的数据源有多少层了,挺方便的。下面这个这个不用多说吧,下载依赖

npm install --save @riophae/vue-treeselect

3. 引入组件

import Treeselect from "@riophae/vue-treeselect";
import "@riophae/vue-treeselect/dist/vue-treeselect.css";

4. 代码

<treeselect :value="deptIds" :options="deptOptions" :show-count="true" :multiple="true" @select="handleSelect"  @deselect="handleDeselect" placeholder="请选择归属部门" />

deptIds: []

// 选中的数据
handleSelect(selectedNodes) {
  this.deptIds.push(selectedNodes.id);
},
// 取消后的数据
handleDeselect(selectedNodes) {
  let id = selectedNodes.id;
  let idx = this.deptIds.findIndex(it=> it == id)
  this.deptIds.splice(idx,1)
},

deptOptions 格式为:
在这里插入图片描述

### 关于 Vue-Treeselect使用教程 #### 安装与引入 为了在项目中使用 `vue-treeselect` 组件,首先需要安装该库。可以通过 npm 或 yarn 来完成安装: ```bash npm install @riophae/vue-treeselect --save ``` 或者 ```bash yarn add @riophae/vue-treeselect ``` 接着,在项目的入口文件(通常是 `main.js`),可以按照如下方式全局引入并注册此组件[^3]。 ```javascript // main.js import Treeselect from &#39;@riophae/vue-treeselect&#39; import &#39;@riophae/vue-treeselect/dist/vue-treeselect.css&#39; Vue.component(&#39;treeselect&#39;, Treiselect) ``` #### 基本用法 下面是一个简单的例子来展示如何在一个页面上使用这个组件。这里定义了一个选项列表作为树结构的数据源,并将其绑定到 `<treeselect>` 标签上的 `:options` 属性;同时通过 v-model 双向绑定了所选中的节点 ID 到变量 selectedId 上[^1]。 ```html <template> <div id="app"> <!-- TreeSelect --> <label>Choose a node:</label> <treeselect :options="options" v-model="selectedId"/> <!-- Display the selected value --> <p>You have chosen {{ selectedValue }}</p> </div> </template> <script> export default { name: &#39;App&#39;, data() { return { options: [ { id: &#39;a&#39;, label: &#39;a&#39;, children: [] }, { id: &#39;b&#39;, label: &#39;b&#39;, children: [{ id: &#39;ba&#39;, label: &#39;ba&#39; }] } ], selectedId: null, }; }, computed: { selectedValue() { const option = this.options.find(option => option.id === this.selectedId); return option ? option.label : &#39;&#39;; } } }; </script> ``` #### 配置项说明 除了基本属性外,还支持更多配置参数来自定义行为和外观,比如设置是否允许多选 (`multiple`)、禁用状态(`disabled`)等特性。具体可查阅官方文档获取完整的 API 列表[^2]。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值