element-ui组件table实现自定义筛选功能的示例代码


Posted in Javascript onMarch 15, 2019

element-ui默认的table组件支持的表头筛选(过滤)是比较简单的,只支持数组的方式,单选或多选的形式,但有时候我们喜欢支持输入框形式(其实感觉有点扯淡,一般列表页上面都有搜索条件)。

注意:里面用到的jsx语法,可能需要安装一些插件。

准备工作:

1.安装babel-plugin-jsx-v-model插件

npm i babel-plugin-jsx-v-model -D

或者

yarn add babel-plugin-jsx-v-model -D

2..babelrc:

{
 "presets": ["es2015"],
 "plugins": ["jsx-v-model", "transform-vue-jsx"]
}

3.重启本地环境

实现效果如下:

element-ui组件table实现自定义筛选功能的示例代码

代码如下:

<template>
  <div>
    <el-table :data="tableData">
      <el-table-column label="这是文字" :render-header="renderHeader" prop="name"></el-table-column>
      <el-table-column label="地址" prop="address"></el-table-column>
    </el-table>
  </div>
</template>

<script>
export default {
  data() {
    return {
      search: '',
      visible: false,
      tableData: [{
        date: '2016-05-02',
        name: '王小虎',
        address: '上海市普陀区金沙江路 1518 弄'
      }, {
        date: '2016-05-04',
        name: '王小虎',
        address: '上海市普陀区金沙江路 1517 弄'
      }, {
        date: '2016-05-01',
        name: '王小虎',
        address: '上海市普陀区金沙江路 1519 弄'
      }, {
        date: '2016-05-03',
        name: '王小虎',
        address: '上海市普陀区金沙江路 1516 弄'
      }]
    }
  },
  methods: {
    renderHeader(h, {column, $index}, index) {
      return (
        <span>
          问题分类
          <el-popover placement='bottom' width='200' height='200' trigger="click" v-model={this.visible}>
            <span slot="reference">
              <i class="el-icon-search" style={this.search ? {'color' : 'red'} : {'color': 'blue'}}></i>
            </span>
            <el-input size='small' v-model={this.search} placeholder='请输入内容'></el-input>
            <div class='el-table-filter__bottom'>
              <button class={this.search ? '' : 'is-disabled'}>筛选</button>
              <button on-click={this.clearSearch}>重置</button>
            </div>
          </el-popover>
        </span>
      );
    },
    clearSearch() {
      this.search = '';
    }
  }
}
</script>

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

Javascript 相关文章推荐
document.open() 与 document.write()的区别
Aug 13 Javascript
禁用键盘上的(全局)指定键兼容iE、Chrome、火狐
May 14 Javascript
解析Jquery取得iframe中元素的几种方法
Jul 04 Javascript
jQuery中的val()示例应用
Feb 26 Javascript
node.js中的console用法总结
Dec 15 Javascript
Bootstrap每天必学之弹出框(Popover)插件
Apr 25 Javascript
VUE中v-model和v-for指令详解
Jun 23 Javascript
Vue-Router进阶之滚动行为详解
Sep 13 Javascript
JS中比较两个Object数组是否相等方法实例
Nov 11 Javascript
Vue+Element实现网页版个人简历系统(推荐)
Dec 31 Javascript
微信小程序实现拨打电话功能的示例代码
Jun 28 Javascript
js实现省级联动(数据结构优化)
Jul 17 Javascript
vue过滤器用法实例分析
Mar 15 #Javascript
vue v-for循环重复数据无法添加问题解决方法【加track-by='索引'】
Mar 15 #Javascript
详解vue移动端项目代码拆分记录
Mar 15 #Javascript
小程序自定义单页面、全局导航栏的实现代码
Mar 15 #Javascript
使用webpack搭建vue项目实现脚手架功能
Mar 15 #Javascript
vue使用el-upload上传文件及Feign服务间传递文件的方法
Mar 15 #Javascript
详解用vue2.x版本+adminLTE开源框架搭建后台应用模版
Mar 15 #Javascript
You might like
PHP 下载文件时自动添加bom头的方法实例
2014/01/10 PHP
PHP判断字符串长度的两种方法很实用
2015/09/22 PHP
javascript编程起步(第五课)
2007/02/27 Javascript
jQuery 插件 将this下的div轮番显示
2009/04/09 Javascript
html 锁定页面(js遮罩层弹出div效果)
2009/10/27 Javascript
jQuery给动态添加的元素绑定事件的方法
2015/03/09 Javascript
js+html5绘制图片到canvas的方法
2015/06/05 Javascript
JavaScript简单修改窗口大小的方法
2015/08/03 Javascript
js实现交通灯效果
2017/01/13 Javascript
Bootstrap按钮组实例详解
2017/07/03 Javascript
微信小程序实现拖拽 image 触摸事件监听的实例
2017/08/17 Javascript
vue mintui-Loadmore结合实现下拉刷新和上拉加载示例
2017/10/12 Javascript
jQuery实现点击下拉框中的值累加到文本框中的方法示例
2017/10/28 jQuery
[原创]js实现保存文本框内容为本地文件兼容IE,chrome,火狐浏览器
2018/02/14 Javascript
layui数据表格跨行自动合并的例子
2019/09/02 Javascript
JS造成内存泄漏的几种情况实例分析
2020/03/02 Javascript
微信小程序实现抖音播放效果的实例代码
2020/04/11 Javascript
vue 重塑数组之修改数组指定index的值操作
2020/08/09 Javascript
[03:23]我的刀塔你不可能这么可爱 第一期金萌萌的故事
2014/06/20 DOTA
[03:57]《不朽》——2015DOTA2国际邀请赛—中国军团出征主题曲MV
2015/07/15 DOTA
简析Python的闭包和装饰器
2016/02/26 Python
20个常用Python运维库和模块
2018/02/12 Python
numpy中的ndarray方法和属性详解
2019/05/27 Python
python opencv肤色检测的实现示例
2020/12/21 Python
python 获取域名到期时间的方法步骤
2021/02/10 Python
canvas简易绘图的实现(海绵宝宝篇)
2018/07/04 HTML / CSS
html5 postMessage前端跨域并前端监听的方法示例
2018/11/01 HTML / CSS
Perry Ellis官网:美国男士品味服装
2016/12/09 全球购物
个人找工作的自我评价
2013/10/17 职场文书
亲子拓展活动方案
2014/02/20 职场文书
《散步》教学反思
2014/03/02 职场文书
2015年社区教育工作总结
2015/05/13 职场文书
少先队大队委竞选口号
2015/12/25 职场文书
决心书格式及范文
2019/06/24 职场文书
关于springboot配置druid数据源不生效问题(踩坑记)
2021/09/25 Java/Android
APP界面设计技巧和注意事项
2022/04/29 杂记