0.1.0 • Published 2 years ago

kr-table v0.1.0

Weekly downloads
-
License
-
Repository
-
Last release
2 years ago

kr-table

简介

一个基于 vue 的 PC 端表格组件,该组件由 ElementUI Table 组件拓展而成,支持表格列配置、数据编辑、数据校验、导出、表单渲染、数据分页、自定义模板、渲染器、灵活的配置项、扩展接口等...

  • 设计理念
    • 面向现代浏览器,高效的简洁 API 设计
    • 模块化表格、扩展接口
    • 为单行编辑表格而设计,支持行内编辑验证及更多扩展

功能点

  • 基础表格
  • 斑马线条纹
  • 多种边框
  • 单元格样式
  • 列宽拖动
  • 固定列
  • 高亮行
  • 序号
  • 复选框
  • 动态操作菜单
  • 排序
  • 导出
  • 加载中
  • 格式化内容
  • 自定义插槽
  • 分页
  • 单元格数据编辑
  • 单元格数据校验
  • 渲染器
  • 虚拟滚动
  • 打印

安装

版本:vue 2.x

npm install kr-table

npm

import Vue from 'vue'
import KrTable from 'kr-table'
import 'kr-table/lib/kr-table.css'

Vue.use(KrTable)

CDN(暂无)

示例

<template>
  <div>
    <kr-table :columns="columns" :data="items"></kr-table>
  </div>
</template>
<script>
  export default {
    data() {
      return {
        columns: [
          { title: '编号', key: 'id' },
          { title: '姓名', key: 'name' },
          { title: '角色', key: 'role' },
          { title: '性别', key: 'sex' },
          { title: '地址', key: 'address' },
        ],
        data: [
          { id: '100001', name: 'Test1', role: 'Develop', sex: '男', address: '北京' },
          { id: '100002', name: 'Test2', role: 'Develop', sex: '女', address: '成都' },
          { id: '100003', name: 'Test3', role: 'Develop', sex: '女', address: '上海' },
          { id: '100004', name: 'Test4', role: 'Develop', sex: '男', address: '深圳' },
        ],
      }
    },
  }
</script>

组件文档

Attributes

参数说明类型可选值默认值
columns表头配置Array————
data表格数据Array————
loading表格加载Boolean——false
loadingOptions表格加载配置Object————
loadError加载出错Boolean——false
optionsElementUI table 组件属性对象Object————
selectionRow是否多选Object/null——null
highlightCurrentRow是否高亮新显示当前行Object/null——null
indexRow是否显示序号列Object/null——null
treeRow是否显示树状表格 展开/收起 列Object/null——null
handleRow是否显示操作列Object/null——null
headerSet是否可设置列展示Boolean——true
shoWFooter是否底部信息Boolean——false
pagination分页信息Object——"{ pageNum: 1,pageSize: 24,total: 0,}"
pageLayout组件布局,子组件名用逗号分隔String——"total, sizes, prev, pager, next, jumper"
colConfigId表格列配置本地存储 key(唯一值)String————
localSortable是否本地排序Boolean——false
disableAllSelect是否隐藏全选Boolean——false
isLocalPaging是否使用本地分页(注:不支持树状表格)Boolean——false
isExport是否使用导出功能Boolean——false
exportAll是否导出所有数据,true:导出当前页所有数据,false:导出勾选的数据Boolean——true
exportName导出文件名称String————

Events

包含 ElementUI Table 组件,新增以下事件:

事件名说明参数
refresh-method当加载错误,点击重新加载触发事件——
on-row-open树状表格 展开 当前数据子数据(treeRow 设置时有效){row, index, callback:Function(data:Array)}
on-row-open树状表格 收起 当前数据子数据(treeRow 设置时有效){row, index, callback:Function(data:Array)}

Methods

包含 ElementUI Table 组件方法,新增以下方法:

方法名说明参数
hidePanel隐藏操作面板——
setFirstRowSelected高亮选中第一条数据——

Slot

name说明
appendRow表格数据末尾附加一行内容
empty当数据条数为空时,表格插入至表格中的内容
footer插入表格底部的内容,默认展示分页组件,当 shoWFooter 为 true 时有效
footerLeft插入表格底部分页组件左侧的内容,当 shoWFooter 为 true 时有效
footerRight插入表格底部分页组件右侧侧的内容,当 shoWFooter 为 true 时有效