组件名称:jr-dynamic-query-table

组件布局

table组件名称:  jr-dynamic-query-table

分页组件名称: el-pagination

<div ref="table001" style="white">

<jr-dynamic-query-table

:columns="columns"

:data="content"

:border="true"

:stripe="true"

tooltip-effect="dark"

:selection="selection"

:height="tableHeight"

size="mini"

@selection-change="handleSelectionChange"

@row-dblclick="handleEdit"

class="jr-table-erp"

></jr-dynamic-query-table>

<div style="text-align: right;padding: 10px 0">

<el-pagination

@current-change="handleCurrentChange"

:current-page="page + 1"

:page-size="size"

layout="prev, pager, next, jumper"

:page-count="totalPages"

background

></el-pagination>

</div>

</div>

组件相关方法

1table高度自动计算的方法

async resizeTable() {

const { height, page, size } = await this.autoPagination({

ref: "table001",

minus: 102,

currentPage: this.page,

currentSize: this.size

});

this.tableHeight = height;

this.page = page;

this.size = size;

this.search();

}

该方法首次需要在amount里调用一次

async mounted() {

//await this.init();

await this.resizeTable();

}

需要配合v-resize使用

<template>

<div v-resize:throttle.1000="resizeTable">

...

</div>

</template>

使用实例:

<template>

<jr-dynamic-query-table

:data="data"

:columns="columns"

@change="handleChange"

@selection-change="handleSelectionChange"

@sort-change="handleSortChange"

size="mini"

:stripe="true"

class="jr-table-erp" />

</template>

<script>

import '../../JrVue';

export default {

data() {

return {

data: [

{

id: '0',

name: 'ytm',

sex: 'male',

birthday: '1990-09-03',

},

{

id: '1',

name: 'stm',

sex: 'female',

birthday: '1990-01-12',

},

],

columns: [

{ type: 'checkbox', align: 'center' },

{

type: 'filter',

prop: 'name',

label: 'name',

headerAlign: 'center',

sortable: 'custom',

},

{

type: 'select',

label: 'sex',

prop: 'sex',

headerAlign: 'center',

sortable: 'custom',

options: [

{ id: 'male', name: 'male' },

{ id: 'female', name: 'female' },

],

},

{

label: 'birthday',

prop: 'birthday',

sortable: 'custom',

headerAlign: 'center',

},

{

label: 'operation',

defaultSlot: ({ row }) => (

<el-button

type="danger"

size="mini"

onClick={() => window.console.log(row)}

>

删除

</el-button>

),

},

],

};

},

methods: {

handleChange(operators) {

window.console.log(JSON.stringify(operators));

},

handleSelectionChange(selection) {

window.console.log(selection);

},

handleSortChange(options) {

window.console.log(options);

},

},

};

</script>

<style>

</style>

展示内容:

Api说明

jr-dynamic-query-table是对el-table的一层薄封装,兼容el-table的所属属性和事件,此文档只讲解和el-table的不同之处。

el-table的使用文档参考:http://element.eleme.io/#/zh-CN/component/table

扩展属性:columns

columns是一个数组,用来取代el-column, 它支持el-column的所有属性和事件,区别是这里必须使用vue-jsx语法。

columns有一个特殊参数,type, 可选取值为checkbox, select, filter

其中checkbox类型的列会被解析为复选框。

select列被解析为多选,需要提供options列参数,提供选项。options参数格式为{id, name}

filter列被解析为动态查询列

columns通过defaultSlot属性自定义单元格内容,它相当于el-column的default插槽。

扩展事件:change

返回一个动态查询数组,用来配合后端动态查询功能。

定制样式:jr-table-erp

此样式负责将表格渲染成久蓉标准里规定的配色。

公司5:JrVue表格的更多相关文章

  1. element el-table表格的vue组件二次封装(附表格高度自适应)

    基于vue的el-table表格二次封装组件方法 前言 在公司实习使用vue+element-ui框架进行前端开发,使用表格el-table较为多,有些业务逻辑比较相似,有些地方使用的重复性高,如果多 ...

  2. Oracle、MySql、SQLServer数据分页查询

    看过此博文后Oracle.MySql.SQLServer 数据分页查询,在根据公司的RegionRes表格做出了 SQLserver的分页查询语句: 别名.字段 FROM( SELECT row_nu ...

  3. EBS中使用JAVA方式发送HTML格式邮件

    转自huan.gu专栏:http://blog.csdn.net/gh320/article/details/17174769 EBS中使用JAVA方式发送HTML格式邮件 一.开发工具:JDevel ...

  4. 如何打造千万级Feed流系统

    from:https://www.cnblogs.com/taozi32/p/9711413.html 在互联网领域,尤其现在的移动互联网时代,Feed流产品是非常常见的,比如我们每天都会用到的朋友圈 ...

  5. 008杰信-创建购销合同Excel报表系列-1-建四张表

    本博客的内容来自于传智播客: 我们现在开始要做表格了,根据公司要求的表格的形式,来设计数据库.规划针对这个表格要设计几张表,每张表需要哪些字段. 根据公司原有的表格,设计数据库: 原有的表格

  6. table样式测试总结tr td宽度分析

    题外话:一直以来习惯布局用ul,li样式调整比较方便,不会互相影响出现一些问题,but~现在公司涉及很多表格打印,都是用table写的,好多宽度高度合并啊,组合啊~~~,单元格之间互相影响,有的样式设 ...

  7. PDF 相关操作

    去年一年偷了下懒, 博客写了一点就没写了, 还好一些大的flag完成了.  花了半年的空余时间, 培养了一门兴趣爱好.   自己在为人处世上还是不够圆滑啊, 也难怪.   自己当初选择走技术这条路的初 ...

  8. 云原生时代的DevOps平台设计之道

    开发人员与运维人员是 IT 领域很重要的两大人群,他们都会参与到各种业务系统的建设过程中去.DevOps 是近年间火爆起来的一种新理念,这种理念被很多人错误的解读为"由开发人员(Dev)学习 ...

  9. 百度地图里面搜索到的公司商家电话导出表格?怎样将把百度地图里面搜索到的公司 电话 地址 等数据导出excel里?

    好多人在问:如何将百度地图里面搜索到的公司商家电话导出表格?怎样将把百度地图里面搜索到的公司 电话 地址 等数据导出excel里? 现在,很多人都在网络上找商家,联系业务. 百度地图里有很多的商家联系 ...

随机推荐

  1. Linux Shell常用技巧(八) 系统运行状况

    十八.  和系统运行状况相关的Shell命令:    1.  Linux的实时监测命令(watch):    watch 是一个非常实用的命令,可以帮你实时监测一个命令的运行结果,省得一遍又一遍的手动 ...

  2. 一起去打CS(codevs 5059)

    题目描述 Description 早就和lyk约好了去打cs,一直没找着时间,终于今天我家没人,他家也没人,总算可以出去了.但是偏偏天公不作美,某某人非要留那么多题要做.没办法只能尽快做完然后抓紧时间 ...

  3. 2018/3/14 Hadoop学习笔记(一)

    首先,什么是Hadoop?为什么它是现在大数据处理最热门的框架呢?(正确来说,现在Hadoop是一个生态圈) Hadoop是apache下一套开源的服务框架,它主要的作用就是利用服务器集群,来对海量数 ...

  4. POJ 3680_Intervals

    题意: 给定区间和该区间对应的权值,挑选一些区间,求使得每个数都不被K个区间覆盖的最大权值和. 分析: 如果K=1,即为区间图的最大权独立集问题.可以对区间所有端点排序后利用动态规划的方法,设dp[i ...

  5. Ubuntu 16.04硬盘有坏道,开机显示blk_update_request:I/0 error

    可以尝试以下方式解决: 1.检查坏道(效果明显,但是比较慢,检查出来并没有什么用,只是知道有坏块) sudo badblocks -s -v -o /root/bb.log /dev/sda1 2.快 ...

  6. Windows堆思维导图--Windows pro sp3

    http://bbs.pediy.com/showthread.php?p=1445192#post1445192

  7. MongoDB小结19 - find【查询条件$all】

    利用all来查询所以满足的匹配项,已知数据库有这些数据 db.user.find({},{"_id":0}) { "fruit" : [ "apple ...

  8. SAS编程基础 - 逻辑库和数据集

    1. SAS逻辑库 1.1 创建SAS逻辑库: libname lb 'F:\Data_Model'; libname是关键字,lb是创建的逻辑库的名称,引号内的内容是目录路径,最后一个分号结束程序语 ...

  9. server证书安装配置指南(Tomcat 6)

    一.   生成证书请求   1.  安装JDK 安装Tomcat须要JDK支持. 假设您还没有JDK的安装.则能够參考 Java SE Development Kit (JDK) 下载. 下载地址: ...

  10. mainboard

    MAINBOARD ★ CPU(type, speed, amount, cache, slot or socket, fan) ★ RAM(the most capacity, amount, fr ...