VueJS实现模糊查询

4 篇文章 0 订阅

效果图:在这里插入图片描述

前言:前端人员已经拿到后端返回的所有数据,由前端人员自行实现迷糊查询
前置条件:
开发环境:windows
开发框架:vue2.5 ,vue-cli 4.0+
编辑器:HbuilderX
兼容版本:vue2.5 Chrome 99.0.4844.51

正文:实现此功能需要用到JS的 filter, includes两个API ,具体使用方法,童鞋们自行百度,不再一 一赘述

打开控制台,可以看到选中的数组

上热乎乎的代码:


<template>
  <div id="app">
    <input type="text" v-model="input" />
    <ul>
      <li v-for="item of search"
        :key="item.name"
        @click="selection(item)"
      >{{item.name}}</li>
    </ul>
  </div>
</template>

<script>
export default {
  name: "app",
  data() {
    return {
      items: [
        { name: "路飞" ,id:2},
        { name: "索隆" ,id:3 },
        { name: "路也" ,id:4 },
        { name: "娜美" ,id:5 },
        { name: "山本" ,id:6 },
        { name: "美了" ,id:7 },
        { name: "乔治山本路夫" ,id:8 },
        { name: "美杜莎" ,id:1 },
        { name: "娜美尼可" ,id:9 }
      ],
      input: ""
    };
  },
  methods:{
    selection(data){
      console.log("选中的数据:",data);
    }
  },
  computed: {
    search() {
      if (!this.input) {
        return this.items;
      }
      return this.items.filter(v => {
        return v.name.includes(this.input);
      });
    }
  }
};
</script>

Ps:因为要对数组进行过滤,使用 filter 填充所有通过测试的数组,而

includes 方法确定数组是否包含指定的元素,返回布尔值;如果返会true,说明存在符合条件的数组,filter 会自动筛选出来与条件相匹配的数据,并自动返回

【关注公共号可查看原文】
在这里插入图片描述

  • 1
    点赞
  • 10
    收藏
    觉得还不错? 一键收藏
  • 2
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值