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 相关文章推荐
div移动 输入框不能输入的问题
Nov 19 Javascript
PHP abstract与interface之间的区别
Nov 11 Javascript
利用Angularjs和原生JS分别实现动态效果的输入框
Sep 01 Javascript
vue组件间通信解析
Mar 01 Javascript
JavaScript实现左右下拉框动态增删示例
Mar 09 Javascript
jquery实现图片放大点击切换
Jun 06 jQuery
javascript 玩转Date对象(实例讲解)
Jul 11 Javascript
JS中的回调函数实例浅析
Mar 21 Javascript
使用taro开发微信小程序遇到的坑总结
Apr 08 Javascript
vue监听dom大小改变案例
Jul 29 Javascript
在vue中使用jsonp进行跨域请求接口操作
Oct 29 Javascript
JS实现鼠标移动拖尾
Dec 27 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
php初学者写及时补给skype用户充话费的小程序
2008/11/02 PHP
php实现的发送带附件邮件类实例
2014/09/22 PHP
js中运算符&amp;&amp; 和 || 的使用记录
2014/08/21 Javascript
JS实现仿京东淘宝竖排二级导航
2014/12/08 Javascript
jQuery中document与window以及load与ready 区别详解
2014/12/29 Javascript
使用jquery组件qrcode生成二维码及应用指南
2015/02/22 Javascript
js中数组结合字符串实现查找(屏蔽广告判断url等)
2016/03/30 Javascript
javascript中错误使用var造成undefined
2016/03/31 Javascript
js停止冒泡和阻止浏览器默认行为的简单方法
2016/05/15 Javascript
JavaScript中三种常见的排序方法
2017/02/24 Javascript
详解从Node.js的child_process模块来学习父子进程之间的通信
2017/03/27 Javascript
vue.js2.0点击获取自己的属性和jquery方法
2018/02/23 jQuery
微信小程序实现漂亮的弹窗效果
2020/05/26 Javascript
js canvas实现二维码和图片合成的海报
2020/11/19 Javascript
在Vue中用canvas实现二维码和图片合成海报的方法
2019/06/10 Javascript
vue实现图片预览组件封装与使用
2019/07/13 Javascript
Vuex模块化应用实践示例
2020/02/03 Javascript
Vue数据双向绑定原理实例解析
2020/05/15 Javascript
python数据结构之二叉树的统计与转换实例
2014/04/29 Python
在Python中利用Into包整洁地进行数据迁移的教程
2015/03/30 Python
python利用有道翻译实现&quot;语言翻译器&quot;的功能实例
2017/11/14 Python
python的几种矩阵相乘的公式详解
2019/07/10 Python
对Python 中矩阵或者数组相减的法则详解
2019/08/26 Python
Python获取当前脚本文件夹(Script)的绝对路径方法代码
2019/08/27 Python
python脚本实现音频m4a格式转成MP3格式的实例代码
2019/10/09 Python
python GUI库图形界面开发之PyQt5图片显示控件QPixmap详细使用方法与实例
2020/02/27 Python
Win10环境中如何实现python2和python3并存
2020/07/20 Python
python boto和boto3操作bucket的示例
2020/10/30 Python
HTML5新控件之日期和时间选择输入的实现代码
2018/09/13 HTML / CSS
丝芙兰新加坡官网:Sephora新加坡
2018/12/04 全球购物
Solaris操作系统的线程机制
2015/07/28 面试题
Linux的主要特性
2016/09/03 面试题
某公司面试题
2012/03/05 面试题
人力资源专业推荐信
2013/11/29 职场文书
让子弹飞观后感
2015/06/11 职场文书
如何在CSS中绘制曲线图形及展示动画
2021/05/24 HTML / CSS