vue实现表格过滤功能


Posted in Javascript onSeptember 27, 2019

本文实例为大家分享了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>

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

Javascript 相关文章推荐
JavaScript中:表达式和语句的区别[译]
Sep 17 Javascript
js 获取后台的字段 改变 checkbox的被选中的状态 代码
Jun 05 Javascript
jquery ajax方式直接提交整个表单核心代码
Aug 15 Javascript
用unescape反编码得出汉字示例
Apr 24 Javascript
jquery 重写 ajax提交并判断权限后 使用load方法报错解决方法
Jan 19 Javascript
JavaScript数据绑定实现一个简单的 MVVM 库
Apr 08 Javascript
深入理解js中this的用法
May 28 Javascript
JS中的hasOwnProperty()和isPrototypeOf()属性实例详解
Aug 11 Javascript
获取select的value、text值的简单示例(jquery与javascript)
Dec 07 Javascript
JS实现仿UC浏览器前进后退效果的实例代码
Jul 17 Javascript
js实时监控文本框输入字数的实例代码
Jan 18 Javascript
ES6 十大特性简介
Dec 09 Javascript
vue实现手机端省市区区域选择
Sep 27 #Javascript
使用layui的layer组件做弹出层的例子
Sep 27 #Javascript
vue选项卡切换登录方式小案例
Sep 27 #Javascript
layer.open提交子页面的form和layedit文本编辑内容的方法
Sep 27 #Javascript
在layer弹层layer.prompt中,修改placeholder的实现方法
Sep 27 #Javascript
使用layer弹窗,制作编辑User信息页面的方法
Sep 27 #Javascript
vue实现倒计时获取验证码效果
Apr 17 #Javascript
You might like
星际中一些鲜为人知的详细资料
2020/03/04 星际争霸
php实现jQuery扩展函数
2009/10/30 PHP
php Notice: Undefined index 错误提示解决方法
2010/08/29 PHP
深入extjs与php参数交互的详解
2013/06/25 PHP
教你识别简单的免查杀PHP后门
2015/09/13 PHP
PHP文字转图片功能原理与实现方法分析
2017/08/31 PHP
php处理多图上传压缩代码功能
2018/06/13 PHP
PHP fopen函数用法实例讲解
2019/02/15 PHP
jQuery的Ajax时无响应数据的解决方法
2010/05/25 Javascript
基于JQuery的多标签实现代码
2012/09/19 Javascript
AngularJS 路由和模板实例及路由地址简化方法(必看)
2016/06/24 Javascript
js创建数组的简单方法
2016/07/27 Javascript
js严格模式总结(分享)
2016/08/22 Javascript
微信js-sdk界面操作接口用法示例
2016/10/12 Javascript
Vuex之理解Mutations的用法实例
2017/04/19 Javascript
浅谈原型对象的常用开发模式
2017/07/22 Javascript
Angular2+国际化方案(ngx-translate)的示例代码
2017/08/23 Javascript
ES6中字符串string常用的新增方法小结
2017/11/07 Javascript
vue父组件点击触发子组件事件的实例讲解
2018/02/08 Javascript
React Router v4 入坑指南(小结)
2018/04/08 Javascript
swiper4实现移动端导航切换
2020/10/16 Javascript
解决Vue.js应用回退或刷新界面时提示用户保存修改问题
2019/11/24 Javascript
[01:33:14]LGD vs VP Supermajor 败者组决赛 BO3 第二场 6.10
2018/07/04 DOTA
Python开发常用的一些开源Package分享
2015/02/14 Python
matplotlib实现热成像图colorbar和极坐标图的方法
2018/12/13 Python
Python selenium页面加载慢超时的解决方案
2020/03/18 Python
python中的django是做什么的
2020/07/31 Python
Python Opencv轮廓常用操作代码实例解析
2020/09/01 Python
德国珠宝和配件商店:Styleserver
2021/02/23 全球购物
销售代表求职自荐信
2013/10/01 职场文书
团组织关系介绍信
2014/01/12 职场文书
出纳员岗位责任制
2014/02/11 职场文书
教师廉洁自律个人总结
2015/02/10 职场文书
教你用Python matplotlib库制作简单的动画
2021/06/11 Python
十大公认最好看的动漫:《咒术回战》在榜,《钢之炼金术师》第一
2022/03/18 日漫
mysql的Buffer Pool存储及原理
2022/04/02 MySQL