<dependency>
<groupId>com.github.liuhuagui</groupId>
<artifactId>smalldoc-spring-boot-starter</artifactId>
<version>2.4</version>
</dependency>
smalldoc
的上一个版本是2.3.1
,2.3.2
在2019-10月就开始操刀了,但是由于两个原因2.3.2
未及时交付——
- 有老人去世,回老家守孝
- 在新版的UI实现中,遇到了AntdV3在设计最初就存在的一个bug,导致这段代码的实现遇到阻碍,但是又不想放弃预想的UI效果,强迫症之下,,虽然本职是一个后端开发,还是去看了AntdV3的源码,实现了自己的解决方案,并由此写下一篇总结《Ant-design Table组件当滚动列的行高变化时,固定列的行高不会同步变化,或固定列变化滚动列不变,造成布局破坏。》,但毕竟不是从源码层面进行的复写,所以在渲染速度上存在缺陷——当数据量较大,会出现肉眼可见的卡顿。不过幸运的是,在我实现解决方案的后两天,AntdV4的第一个可用版本
antd-4.0.0-rc.0
就发布了,从主要commiter的知乎专栏了解到,antdV4推翻了antdV3原本的设计,重新实现了代码,从根本上解决了诸如此类的bug,大幅度提高了antd组件的渲染速度,从而使smalldoc的UI界面得到可观改善!
于是由于2.3.2
版本的迟迟未交付,作者干脆一鼓作气,根据issues中支持者提到的诸多问题及建议对smalldoc做了一次全面升级,发布了如今的smalldoc-2.4
,更新日志如下。。。
更新日志
- 更强大的参数配置语法,使接口文档展示更人性化
增强
; #8 - 增加了基于包的完全限定名或package-info中的注释信息选择文档的菜单栏功能
增强
; #7 - 对UNIX系统做了兼容,例如Mac OS(为此,作者专门买了本Mac 😂)
增强
; #7 - 增加了接口参数示例值推断
增强
; #14 - 集成了API测试功能
增强
; #14 - 可配置的解析类名,支持正则匹配
增强
; #9 - 优化了返回参数实体内集合字段的展示效果
增强
;#15 - 修复了
TypeVariable
是TypeArgument
时无法解析的错误,如下格式修复
#15@RequestMapping("test") public Result<PageResult<List<TestBean>>> test(String s);
- 升级UI至antdV4,修复了组件渲染bug,大幅度提高了渲染速度
增强
; - 修复了UI在渲染返回参数列表时,循环应用造成的堆栈溢出
修复
; #15 - 修复了由于后端JSON库默认开启了循环引用检测造成的数据错误
修复
; #15 - 增加了集合参数(
Set
,List
)使用方式断言(1.集合参数不能是实体参数;2.集合参数需要结合注解@RequestParam
,如下的正确使用方式)增强
#15@RequestMapping("test") public Result<Long> test(@RequestParam List<String> ss);
- 删除了不合理的执行逻辑(比如,直接以实体集合作为接口方法的入参,如下的错误使用方式)
增强
#15@RequestMapping("test") public Result<Long> test(List<TestBean> testBeans);
- 显式的重置UI组件的state,减少由于
React差分算法
造成的不期望的渲染效果增强
; - 修改了数据渲染方式(参考今日头条文章,既保证前后端分离,又保证SEO,可生成离线文档);