广告
返回顶部
首页 > 资讯 > 前端开发 > JavaScript >vue和js中实现模糊查询方式
  • 603
分享到

vue和js中实现模糊查询方式

vue模糊查询js模糊查询vue实现模糊查询 2022-11-13 14:11:10 603人浏览 独家记忆
摘要

目录Vue和js实现模糊查询如何实现?方法1方法2方法3正则表达式实现模糊查询vue和js实现模糊查询 先来看效果图 这种数据量少的场景适用于前端实现模糊查询 如何实现? <

vue和js实现模糊查询

先来看效果图

在这里插入图片描述

这种数据量少的场景适用于前端实现模糊查询

如何实现?

<template>
  <div class="container">
    <div class="search-bar">
      <el-input v-model="inputVal" placeholder="请输入图标名称" suffix-icon="el-icon-search" clearable></el-input>
    </div>
    <div class="icon-contain">
      <div class="icon-item" v-for="item in searchList" :key="item.icon">
        <i class="icon-style" :class="item.icon"></i>
        <span class="icon-name">{{ item.name }}</span>
      </div>
    </div>
  </div>
</template>

js部分

<script>
export default {
  data () {
    return {
      inputVal: '',
      list: [], // 全部图标列表
    }
  },
  created() {
    this.loadData()
  },
  computed: {
    searchList () {
      ....
    }
  },
  methods: {
    loadData() { // 初始化数据
      this.list = [
        { icon: 'el-icon-delete', name: 'el-icon-delete' },
        { icon: 'el-icon-setting', name: 'el-icon-setting' },
        { icon: 'el-icon-user', name: 'el-icon-user' },
        { icon: 'el-icon-star-off', name: 'el-icon-star-off' },
        { icon: 'el-icon-picture-outline', name: 'el-icon-picture-outline' },
        { icon: 'el-icon-s-custom', name: 'el-icon-s-custom' },
        { icon: 'el-icon-edit', name: 'el-icon-edit' },
        { icon: 'el-icon-folder-opened', name: 'el-icon-folder-opened' },
        { icon: 'el-icon-chat-dot-round', name: 'el-icon-chat-dot-round' },
        { icon: 'el-icon-upload', name: 'el-icon-upload' },
        { icon: 'el-icon-message-solid', name: 'el-icon-message-solid' }
      ]
    },
  }
}
</script>

我们用 computed 计算属性来动态获得图标列表数据

想要达到的功能是:输入框输入内容,列表框能动态根据输入值显示输入值相关的列表,即模糊查询

方法1

使用 filter() 和 includes() 实现

  computed: {
    searchList () {
      if (!this.inputVal) {
        return this.list
      }
      return this.list.filter(item => {
      	return item.name.includes(this.inputVal)
      })
      return data
    }
  },

方法2

使用 indexOf() 实现,(涉及到英文字母的还是建议处理一下大小写问题)

  computed: {
    searchList () {
      if (!this.inputVal) {
        return this.list
      }
      const data = []
      this.list.forEach(item => {
        if (item.name.toLowerCase().indexOf(this.inputVal.toLowerCase()) !== -1) {
          data.push(item)
        }
      })
      return data
    }
  },

方法3

使用 test() 正则匹配实现

语法:RegExp.test(string) ,string 要检测的字符串

该方法用于检测一个字符串是否匹配某个模式,如果匹配返回 true ,否则返回 false

  computed: {
    searchList () {
      if (!this.inputVal) {
        return this.list
      }
      const data = []
      const reg = new RegExp(this.inputVal.toLowerCase())
      this.list.forEach(item => {
        if (reg.test(item.name.toLowerCase())) {
          data.push(item)
        }
      })
      return data
    }
  },

还有其他的方法,如 split()、match() 等

正则表达式实现模糊查询

拿到一个新需求 就是在前端进行查询一个数据

虽然一般这种行为都是在后端进行但是有时候就是会给你这个需求,这里因为数据量较小所以就进行简单的遍历查询 没有对数据进行排序后查询 其实有想过二分查找之类的 但是这里数据量较小 就遍历吧

    search() {
      console.log(this.searchInfORMation)
      this.listData = []
      var str = ".*" + this.searchInformation + ".*"
      let reg = new RegExp(str)
      //这里通过邀请码查询
      for(var i=0;i<this.wholeListData.length;i++){
        if(reg.test(this.wholeListData[i].content)){
          this.listData.push(this.wholeListData[i])
        }
      }
      //通过附加信息查询
      for(var i=0;i<this.wholeListData.length;i++){
        if(reg.test(this.wholeListData[i].addition)){
          this.listData.push(this.wholeListData[i])
        }
      }
    },

以上为个人经验,希望能给大家一个参考,也希望大家多多支持编程网。 

--结束END--

本文标题: vue和js中实现模糊查询方式

本文链接: https://www.lsjlt.com/news/171536.html(转载时请注明来源链接)

有问题或投稿请发送至: 邮箱/279061341@qq.com    QQ/279061341

本篇文章演示代码以及资料文档资料下载

下载Word文档到电脑,方便收藏和打印~

下载Word文档
猜你喜欢
  • vue和js中实现模糊查询方式
    目录vue和js实现模糊查询如何实现?方法1方法2方法3正则表达式实现模糊查询vue和js实现模糊查询 先来看效果图 这种数据量少的场景适用于前端实现模糊查询 如何实现? <...
    99+
    2022-11-13
    vue 模糊查询 js 模糊查询 vue实现模糊查询
  • Vue如何实现模糊查询
    这篇文章主要介绍Vue如何实现模糊查询,文中介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们一定要看完!Vue实现模糊查询通过watch和computed实现Vue实现模糊查询计算方法能实现的侦听方法也能够实现,但推荐使用计算方法,应为...
    99+
    2023-06-20
  • MyBatis模糊查询的几种实现方式
    大家好呀,我是柚子,今天这篇文章总结MyBatis模糊查询的几种实现方式~ 文章目录 前言一、模糊查询的几种实现方式1.concat函数和#{}拼接的方式2.%和${}拼接的方式3.concat函数和${}拼接的方式4.||和...
    99+
    2023-08-18
    mybatis java spring boot
  • Vue实现模糊查询的简单方法实例
    前言 所谓模糊查询就是不需要用户完整的输入或者说全部输入信息即可提供查询服务,也就是用户可以在边输入的同时边看到提示的信息(其实是查询出来匹配到的信息),百度的搜索功能就是很好的模糊...
    99+
    2022-11-12
  • 关于MyBatis模糊查询的几种实现方式
    目录一、模糊查询的几种实现方式1.concat函数和#{}拼接的方式2.%和${}拼接的方式3.concat函数和${}拼接的方式4.||和#{}拼接的方式5.建议使用的方式二、用m...
    99+
    2023-05-18
    MyBatis查询 MyBatis模糊查询
  • vue中input输入框如何实现模糊查询
    这篇文章给大家分享的是有关vue中input输入框如何实现模糊查询的内容。小编觉得挺实用的,因此分享给大家做个参考,一起跟随小编过来看看吧。Vue 模糊查询功能原理:原生js的search() 方法,用于检...
    99+
    2022-10-19
  • mysql中like % %模糊查询的实现
    1,%:表示任意0个或多个字符。可匹配任意类型和长度的字符,有些情况下若是中文,请使用两个百分号(%%)表示。 比如 SELECT * FROM [user] WHERE u_name LIKE ...
    99+
    2022-05-27
    mysql like % %模糊查询 mysql like模糊查询
  • Vue实现模糊查询-Mysql数据库数据
    目录1.需求2.实现3.结果1.需求 输入框中输入数据,根据输入的结果模糊搜索数据库对应内容,实现模糊查询。 2.实现 输入框使用v-model双向绑定查询数据keyWord。 &...
    99+
    2022-11-12
  • MyBatis实现万能Map和模糊查询
    目录万能Map模糊查询万能Map   我们在上一节博文里面将到利用Mybatis实现CRUD操作的时候,我们在数据库表中新增一条数据是这样操作的: 实体类对象...
    99+
    2022-11-12
  • JS中如何实现Select下拉框支持输入模糊查询
    这篇文章主要为大家展示了“JS中如何实现Select下拉框支持输入模糊查询”,内容简而易懂,条理清晰,希望能够帮助大家解决疑惑,下面让小编带领大家一起研究并学习一下“JS中如何实现Select下拉框支持输入...
    99+
    2022-10-19
  • PHP实现模糊查询的方法有哪些
    PHP实现模糊查询的方法有多种,可以根据具体的需求选择以下几种常用的方法:1. 使用LIKE语句:在SQL查询中,使用LIKE语句配...
    99+
    2023-08-24
    PHP
  • Mysql实现模糊查询的两种方式(like子句 、正则表达式)
    目录前言语法like子句语法示例正则表达式语法说明:示例总结通常在实际应用中,会涉及到模糊查询的需求,查询在 mysql 中使用 SQL SELECT 命令来读取数据,有条件的查询可以在 SELECT 语句中使用...
    99+
    2022-09-30
  • Mysql实现模糊查询的两种方式(like子句 、正则表达式)
    目录前言语法like子句语法示例正则表达式语法说明:示例总结通常在实际应用中,会涉及到模糊查询的需求,查询在 MySQL 中使用 SQL SELECT 命令来读取数据,有条件...
    99+
    2022-11-13
  • Vue怎么实现Mysql数据库数据的模糊查询
    这篇文章主要介绍Vue怎么实现Mysql数据库数据的模糊查询,文中介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们一定要看完!1.需求输入框中输入数据,根据输入的结果模糊搜索数据库对应内容,实现模糊查询。2.实现输入框使用v-model...
    99+
    2023-06-22
  • laravel如何实现模糊查询和去重操作
    今天小编给大家分享一下laravel如何实现模糊查询和去重操作的相关知识点,内容详细,逻辑清晰,相信大部分人都还太了解这方面的知识,所以分享这篇文章给大家参考一下,希望大家阅读完这篇文章后有所收获,下面我们一起来了解一下吧。一、模糊查询La...
    99+
    2023-07-05
  • Node.js对MongoDB数据库实现模糊查询的方法
    前言 模糊查询是数据库的基本操作之一,实现对给定的字符串是否与指定的模式进行匹配。如果字符完全匹配,可以用=等号表示,如果部分匹配可认为是一种模糊查询。在关系型数据中,通过SQL使用like ‘%fens%...
    99+
    2022-06-04
    模糊 数据库 方法
  • mybatis-plus指定字段模糊查询的实现方法
    mybatis-plus版本:3.3.0 oracle版本:11g 很常见的一个需求场景:某张表在前端显示时,查询条件中,往往name字段需要模糊查询,否则默认mybatis-plu...
    99+
    2022-11-13
  • MySQL中LIKE BINARY和LIKE模糊查询实例代码
    目录1. Django ORM id__startswith 查询变慢问题原因解决优化前优化后2. mysql 模糊匹配简介用法带有 “%” 通配符的查询例 1例 2例 3带有“_&r...
    99+
    2022-11-08
  • MySQL中LIKE BINARY和LIKE模糊查询实例代码
    目录1. Django ORM id__startswith 查询变慢问题原因解决优化前优化后2. MySQL 模糊匹配简介用法带有 “%” 通配符的查询例 ...
    99+
    2022-11-13
    mysql中like模糊查询 mysql中like的用法 mysql like binary模糊查询
  • 怎么在MongoDB中实现多条件模糊查询
    怎么在MongoDB中实现多条件模糊查询?相信很多没有经验的人对此束手无策,为此本文总结了问题出现的原因和解决方法,通过这篇文章希望你能解决这个问题。模糊查询是数据库的基本操作之一,实现对给定的字符串是否与...
    99+
    2022-10-18
软考高级职称资格查询
编程网,编程工程师的家园,是目前国内优秀的开源技术社区之一,形成了由开源软件库、代码分享、资讯、协作翻译、讨论区和博客等几大频道内容,为IT开发者提供了一个发现、使用、并交流开源技术的平台。
  • 官方手机版

  • 微信公众号

  • 商务合作