vue实现表格过滤功能

 更新时间:2019年09月27日 10:34:51   作者:小羽向前跑  
这篇文章主要为大家详细介绍了vue实现表格过滤功能,具有一定的参考价值,感兴趣的小伙伴们可以参考一下

本文实例为大家分享了vue实现表格过滤功能的具体代码,供大家参考,具体内容如下

效果:

组件代码: 

<template>
 <div>
 <input type="text" v-model="searchText">
 
 <ul>
 <li v-for="(book, index) in filterBooks" :key="index">
  序号 : {{index}}, 书名 ; {{book.name}}, 价格 : {{book.price}}
 </li>
 </ul>
 
 <div>
 <button @click="setOrderType(2)">价格升序</button>
 <button @click="setOrderType(1)">价格降序</button>
 <button @click="setOrderType(0)">原始顺序</button>
 </div> 
 </div> 
</template>
 
<script>
 
 
export default {
 name:"filter1",
 
 data () {
 return {
  searchText: '',
  orderType: 0, // 0:默认顺序, 1:价格降序, 2:价格升序
  books: [
  {name: 'Vue.js', price:50},
  {name: 'Javascript', price:30},
  {name: 'Css', price:40},
  {name: 'Html', price:60}
  ]
 }
 },
 computed: {
  filterBooks () {
  const {searchText, books, orderType} = this
  let filterArr = new Array();
 
  // 过滤数组 过滤name键
  filterArr = books.filter(p => p.name.indexOf(searchText) !== -1)
 
  // 排序
  if(orderType) {
   filterArr.sort(function (p1, p2) {
   if(orderType === 1) { // 降序
    return p2.price - p1.price;
   } else { // 升序
    return p1.price - p2.price;
   }
   })
  }
 
  return filterArr;
  }
 },
 methods: {
  setOrderType (orderType) {
  this.orderType = orderType
  }
 }
}
</script>
 
<style>
 
</style>

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持脚本之家。

您可能感兴趣的文章:

相关文章

  • Vue中的反向代理

    Vue中的反向代理

    这篇文章主要介绍了Vue中的反向代理,具有很好的参考价值,希望对大家有所帮助。如有错误或未考虑完全的地方,望不吝赐教
    2023-01-01
  • vue+element项目中过滤输入框特殊字符小结

    vue+element项目中过滤输入框特殊字符小结

    这篇文章主要介绍了vue+element项目中过滤输入框特殊字符小结,本文通过实例代码给大家介绍的非常详细,具有一定的参考借鉴价值,需要的朋友可以参考下
    2019-08-08
  • ElementUI如何修改el-cascader的默认样式

    ElementUI如何修改el-cascader的默认样式

    ElementUI 是一套ui组件库,目前最新版本 react 和 vue 等主流框架都有支持。该库默认主题色是天蓝色,若用于项目开发,难免遇到要需求修改其默认样式的情况,这篇文章主要介绍了ElementUI如何修改el-cascader的默认样式,需要的朋友可以参考下
    2023-12-12
  • vue中记录滚动条位置的两种方法

    vue中记录滚动条位置的两种方法

    最近用 Vue 做移动端页面遇到一个问题,需要记住滚动条的位置,所以下面这篇文章主要给大家介绍了关于vue中记录滚动条位置的两种方法,文中给出了详细的实例,需要的朋友可以参考下
    2023-01-01
  • Element-ui中的Cascader级联选择器基础用法

    Element-ui中的Cascader级联选择器基础用法

    这篇文章主要为大家介绍了Element-ui中的Cascader级联选择器基础用法,有需要的朋友可以借鉴参考下,希望能够有所帮助,祝大家多多进步,早日升职加薪
    2023-06-06
  • vue项目实现局部全屏完整代码

    vue项目实现局部全屏完整代码

    最近需要做一个全屏功能,所以这里给大家总结下,这篇文章主要给大家介绍了关于vue项目实现局部全屏的相关资料,需要的朋友可以参考下
    2023-09-09
  • vue实现节点增删改功能

    vue实现节点增删改功能

    这篇文章主要为大家详细介绍了vue实现节点增删改功能,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
    2019-09-09
  • 使用mint-ui实现省市区三级联动效果的示例代码

    使用mint-ui实现省市区三级联动效果的示例代码

    下面小编就为大家分享一篇使用mint-ui实现省市区三级联动效果的示例代码,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧
    2018-02-02
  • vue.js实现标签页切换效果

    vue.js实现标签页切换效果

    这篇文章主要介绍了vue.js实现标签页切换效果,代码简单易懂,非常不错,具有一定的参考借鉴价值,需要的朋友可以参考下
    2018-06-06
  • vue filters和directives访问this的问题详解

    vue filters和directives访问this的问题详解

    这篇文章主要介绍了vue filters和directives访问this的问题,具有很好的参考价值,希望对大家有所帮助。如有错误或未考虑完全的地方,望不吝赐教
    2022-01-01

最新评论