1. github直通车:zoGrid
2. 说明:
本插件基于大连首闻grid所做的二次开发,原生支持rest增删改查,并支持配置型增删改查。包括大量可定制可配置功能,开发的过程已经设想了非常多实际使用可能会遇到的场景,一一得到了适配,相信基本上已经可以满足大部分使用需求了,当然会有考虑不周的地方,之后也将继续在使用中对所有不足之处跟紧更新。在此感谢大连首闻grid做出的贡献。
3. 表格截图
- 自定义按钮:
- 自定义工具:
- 编辑新增的表单验证:
- 新增数据:
- 删除行:
- 搜索:
- 排序:
- 导入excel:
- 导出excel:
- 编辑:
4. 二次开发内容说明
二次开发着重点在于ajax分页加载数据功能的大量强化
- 删除高级查询,保留其它所有特性
- 改变工具栏刷新逻辑:
- 原版:只要执行过一次快速查询,不管怎么刷新呈现的数据都是快速查询的内容,除非将快速查询内容清空。
- 现版:刷新不带快速查询条件,得到表格载入时的原数据。
- 修改默认语言为中文
- 修改排序逻辑:
- 原版:排序仅对当前页的数据有效,非全局
- 现版:排序为服务器全局排序
- 修正排序逻辑:原版在服务器获取到数据时本地依然会按照规则进行一次排序,有些情况下反而会打乱原排序。直接删除本地排序。
- 增加自定义工具栏
- 增加删除、编辑两颗默认可配置按钮,增加自定义按钮。
- 增加导入excel功能
- 大量修改与后端的交互逻辑:
- 原版:限制后端必须接收grid规定的数据类型才能完成查找导出等交互,也即后端必须适配前端。
- 现版:大量高自由度可配置的交互逻辑,原版具有的加载、查找、导出均支持配置,服务端返回的数据,分页等格式默认并支持配置,也即前端可以适配后端。
- 补充增、删、改三个逻辑。
- 原版支持restful(java - spring data rest)风格交互,默认操作逻辑具有一定程度的可适配性,尽可能的不需要逻辑配置。
- 支持复杂列加载模式,支持列数据懒加载
5. 详细配置:
gridOption与原版不同的配置项:
loadURL : '',
curdURL : {
retrieve : "/getUsers",
update : "updateUsers/{id}",
delete : "deleteUsers/{id}",
create : "addUsers"
},
dataPath : "_embedded.users",
pagerPath : "page",
pagerDetailPath : {
pagerRootPath : "page",
page : "number",
size : "size",
totalElements : "totalElements",
totalPages : "totalPages",
firstPage : 0
},
tools : 'newData|refresh|fastQuery|export[excel,csv,pdf,txt]|importExcel',
customTools : [{
icon: "fa fa-check",
title: "自定义工具1图标来自内置的fontawesome",
callback: function(data){
alert("当前页数据集:"+JSON.stringify(data));
}
},{
icon: "glyphicon glyphicon-plus",
title: "自定义工具2图标来自bootstrap"
}],
exportURL : '/export',
importURL : '/import',
importAction : "none",
fastQueryURL : "/users/search/default"
配置项详细说明:
- loadURL:优先级低于curdURL,设置loadURL主要用于rest风格,增删改查将会自动根据此url进行配置,包括各自的请求路径和请求方式(get、patch、post、delete)。当curdURL被配置时,此项无效。详细:
+ 删除:delete -> loadURL/资源id
+ 修改:patch -> loadURL/资源id
+ 查询:get -> loadURL
+ 增加:post