首页 > 其他分享 >vue ant design 选中搜索数据高亮

vue ant design 选中搜索数据高亮

时间:2024-12-12 15:45:12浏览次数:5  
标签:vue scopedSlots name tree searchValue childList ant item design

<a-tree
          :tree-data="treeData"
          v-model="tree.checkedKeys"
          :expanded-keys="tree.expandedKeys"
          :replaceFields="tree.replaceFields"
          :checkable="tree.checkable"
          :checkStrictly="tree.checkStrictly"
          :disabled="tree.disabled"
          :auto-expand-parent="tree.autoExpandParent"
          @check="onCheck"
          @select="onSelect"
          @expand="onExpand"
        >
        <template slot="name" slot-scope="{name}">
          <span v-if="name.indexOf(tree.searchValue) > -1">
            {{name.substr(0, name.indexOf(tree.searchValue))}}
            <span style="color: #f50">{{tree.searchValue}}</span>
            {{name.substr(name.indexOf(tree.searchValue) + tree.searchValue.length)}}
          </span>
          <span v-else>{{name}}</span>
        </template>
        </a-tree>

方法中

data中数据构造
 tree: {
        searchValue: '',
        checkable: true,
        checkStrictly: false,
        autoExpandParent: true,
        disabled: false,
        checkedKeys: [],
        selectedKeys: [],
        expandedKeys: [],
        replaceFields: {
          key:'id',
          title:'name',
          value: 'id',
          children: 'childList'
        }
      },

给数据增加插槽
const scopedSlots = { title:'name' }--与插槽的name一致
this.treeData.forEach(item => {
        this.treescopedSlots(item, scopedSlots)
      })
--递归方法加插槽
treescopedSlots(item,scopedSlots){
      item.scopedSlots = scopedSlots;
        if(item.childList){
          item.childList.forEach(
            child=>{
            child.scopedSlots = scopedSlots
            if(item.childList){
              this.treescopedSlots(child,scopedSlots)
            }
          }
          )
        }
    },

标签:vue,scopedSlots,name,tree,searchValue,childList,ant,item,design
From: https://www.cnblogs.com/zwgblogs/p/18602707

相关文章

  • Vue3 tsx 和 template 之间的相互使用
    本文会介绍多种场景下的jsx和template相互使用,主要内容是插槽,包含常规slot、slot传值等场景,不涉及非常基础的jsx语法使用(类似v-for是jsx的map函数等诸如此类的不介绍),因此可能无法覆盖全面,还请多多包涵。长期写react深知其痛,这也是我司也在向vue方向靠拢,对vue......
  • 前端框架 React 与 Vue3对比 —— 技术选型
    在进行前端框架React与Vue3的技术选型对比时,我们可以从以下几个方面进行综合考虑:1.性能比较• Vue3通过Vite打包工具实现了快速的开发和构建,同时使用了响应式系统和Proxy技术来提高数据响应速度。在大部分测试用例中,Vue3比React更快,但在一些特定测试用例中,React......
  • 计算机毕业设计 | SpringBoot+vue高校教师科研管理系统(附源码+论文)
    1,绪论1.1研究背景互联网时代不仅仅是通过各种各样的电脑进行网络连接的时代,也包含了移动终端连接互联网进行复杂处理的一些事情。传统的互联网时代一般泛指就是PC端,也就是电脑互联网时代,但是最近几十年,是移动互联网时代,是向下一步互联网时代过度的一个重要时代,下一个互联......
  • 计算机毕业设计 | SpringBoot+vue智能家居管理系统 米家家居管理(附源码+论文)
    1,绪论1.1课题研究背景与现状时代的进步使人们的生活实现了部分自动化,由最初的全手动办公已转向手动+自动相结合的方式。比如各种办公系统、智能电子电器的出现,都为人们生活的享受提供帮助。采用新型的自动化方式可以减少手动的办公时间,增加正确率从而增加人们的幸福指数......
  • egg+designpro开发内容管理系统实战
    前端架构师egg+designpro开发内容管理系统实战https://www.bilibili.com/video/BV1La411X74h 1+12前端架构师任务1:1.cms-apiwww.zhufengpeixun.cn/architecture/html/30.cms-7-api.html#t63.2%20config/config.default.jsnpmiegg-init-g用cli用模板....https://git......
  • Vue3+Nest+GraphQL+Prisma 入门全栈开发图书管理系统
    Vue3+Nest+GraphQL+Prisma入门全栈开发图书管理系统https://www.bilibili.com/video/BV1K44y197Za 101.课程介绍02.GraphQL入门-上03.GraphQL入门-中04.GraphQL入门-下05.Prisma入门-106.Prisma入门-207.Prisma入门-308.Prisma入门-409.Prisma入门-510.前端编写-上11......
  • Springboot基于springboot和vue的耐思招聘网站的设计与实现96n8j(程序+源码+数据库+调
    本系统(程序+源码+数据库+调试部署+开发环境)带论文文档1万字以上,文末可获取,系统界面在最后面。系统程序文件列表用户,企业招聘者,校园招聘者,个人简历,招聘信息,招聘类型,校园招聘,类型,企业申请,沟通信息,沟通回复,校园申请,校园沟通,回复校园开题报告内容一、项目背景随......
  • Vue中常见指令
    在Vue.js中,指令(Directives)是带有v-前缀的特殊属性,用于在HTML元素上添加特殊的Vue行为。它们可以用来绑定数据、监听事件、控制条件渲染等1.v-bind用途:动态地绑定一个或多个属性,或一个组件的prop到表达式。语法:<!--动态class绑定--><divv-bind:class="{active:isActi......
  • vue 中优雅使用 web worker
    众所周知,JavaScript是单线程的(帮助理解单线程)。一些复杂而又耗时的操作,势必会阻塞页面的渲染/交互,影响用户体验。webworker允许开发者为页面额外开启一个线程,用来处理复杂而耗时的操作,不会阻塞主线程,从而达到优化用户体验的目的。首先,我们来看一下worker 构造函数的使用......
  • springboot+mybatis plus+vue+elementui+axios 表格分页
    1、创建springboot项目2、pom.xml里面添加依赖<dependencies><dependency><groupId>org.springframework.boot</groupId><artifactId>spring-boot-starter-web</artifactId></dependency>......