table用最小的修改来支持最大的数据结构自由

讨论 已结 26 2315
岁月小偷
悬赏:50飞吻
等到脖子都长了的table修改依旧在路上哈,继续期待,不过也看了好多次问如何处理嵌套结构的数据了。分享一个我认为改动最小对数据的匹配自由度极高的方案,以此贴为记录不用每次都说一遍哈。
最主要的思路就是补充一个ajax成功返回之后渲染之前的数据处理。目前的response配置的功能主要就是重命名来匹配后台返回的数据结构,但是只支持单层结构。第二个功能就是定一个成功返回的状态码。
table.js源码改动如下

混淆过的table.js修改的地方

修改代码
typeof options.renderResponse === 'function' && (res = options.renderResponse(res));
typeof n.renderResponse==='function' && (t=n.renderResponse(t));

到此layui组件的修改就可以了,一句代码的事,最主要的功能就是给table拓展一个属性配置,可以在table.render中进行个性化数据的设置。
页面使用方法如下

注意!红色框里面的内容不要动,照抄就可以了,然后绿色框就根据后台返回的数据结构来确定了。
比如:
dataTemp【this.response.countName】= data.pageList.total;
dataTemp【this.response.dataName】 = data.pageList.list;
dataTemp【this.response.statusName】 = data.code;
dataTemp【this.response.msgName】 = data.message;
回帖