vue根据input框的值检索列表

vue根据input框的值检索列表

效果图
在这里插入图片描述
在这里插入图片描述
代码

<template>
<div>
  <input type="text" v-model="search">
  <ul>
   <!-- 注意!注意!注意!这里循环遍历的是items,不再是data里的list数组 -->
   <li v-for="(item,index) in items">
    <span>{{item.name}}</span>
    <span>{{item.msg}}</span>
   </li>
  </ul>
 </div>
</template>

<script>
  export default {
    data() {
      return {
    search:'',
   list:[
    {name:'AAA',msg:'aaa文本介绍1'},
    {name:'BBB',msg:'bbb文本介绍2'},
    {name:'CCC',msg:'ccc文本介绍3'},
    {name:'DDD',msg:'ddd文本介绍4'},
    {name:'EEE',msg:'eee文本介绍5'},
   ]
      }
    },
    computed: {
  //过滤方法
  items: function() {
   var _search = this.search;
   if (_search) {
    //不区分大小写处理
    var reg = new RegExp(_search, 'ig')
    //es6 filter过滤匹配,有则返回当前,无则返回所有
    return this.list.filter(function(e) {
     //匹配所有字段
     return Object.keys(e).some(function(key) {
      return e[key].match(reg);
     })
     //匹配某个字段
     // return e.name.match(reg);
    })
   };
   return this.list;
  }
 },
    methods: {
      handleEdit(index, row) {
        console.log(index, row);
      },
      handleDelete(index, row) {
        console.log(index, row);
      }
    }
  }
</script>

计算属性是个好东西

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值