vue3树形搜索功能

1.组件库中代码

<div> <el-tree :data="treeInfo" :props="defaultProps" @node-click="handleNodeClick" ref="selectTree"    :filter-node-method="filterNode" />  </div>

2.绑定显示数据

const defaultProps = {

      children: 'children',

      label: 'name',}

绑定ref   const selectTree = ref()

3.点击获取节点信息调用接口

   const handleNodeClick = async (val: any) => {

      let params = {

        organizationCode: val.code || '' || null,

      };

      const { data } = await userApi.getUserList(params);

      state.tableData.data = data.list }

4.搜索到节点高亮

:highlight-current="true"

5.使用节点筛选方法

 

    const filterNode = (value: any, data: any) => {

      console.log(value, data);

      if (!value) return true

      return data[defaultProps.label].indexOf(value) !== -1

    }

6.使用watch监听input框中的数据

   watch(() => state.input, (newValue: any, oldValue: any) => {

      selectTree.value.filter(newValue)

    })

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值