Python网页应用开发神器fac 0.2.10版本新功能介绍
fac项目地址:https://github.com/CNFeffery/feffery-antd-components
欢迎star支持⭐
大家好我是费老师,由我开源维护的Python
网页通用组件库fac前不久更新至0.2.10
新版本,使用下列命令可快速完成更新:
pip install feffery-antd-components -U -i https://mirrors.aliyun.com/pypi/simple/
0.2.10
虽然只是个小版本,但足足经过一个夏天的陆续积累更新,积攒了非常丰富的新功能新特性,下面我就来为大家介绍其中的主要更新内容:
1 fac 0.2.10版本新功能介绍
![](https://img2023.cnblogs.com/blog/1344061/202310/1344061-20231023182207093-21058008.png)
1.1 新组件:AntdCenter
新增居中组件AntdCenter
,用于快捷实现内部元素在水平、竖直方向上的居中展示:
![](https://img2023.cnblogs.com/blog/1344061/202310/1344061-20231023182210382-299035928.png)
1.2 新机制:静态资源懒加载
随着fac功能的日渐丰富,随之而来的是其静态资源的增长,即使在dash.Dash()
中开启了compress=True
进行压缩,也有大几百kb。
而从0.2.10
开始,通过重构fac底层逻辑,实现了AntdTable
、上传类组件、数据录入类组件、数据展示类组件的懒加载。用户初始访问我们的dash
应用时将只会请求体积较小的基础静态资源,当页面中实际进行对应懒加载组件的渲染时,才会即时的请求相应资源,大幅度降低了通过互联网所部署dash
应用的带宽压力。
![](https://img2023.cnblogs.com/blog/1344061/202310/1344061-20231023182212589-1553817920.png)
1.3 新特性:批量属性监听
新版本中针对部分组件新增批量属性监听功能,使得我们可以在回调编排中通过batchPropsValues
这一个属性,对batchPropsNames
所定义的多个属性值的打包监听,从而帮助我们提升回调函数编排效率,以AntdTree
为例,同时打包监听了多个属性值变化情况:
![](https://img2023.cnblogs.com/blog/1344061/202310/1344061-20231023182216003-1779016389.png)
1.4 组件简化导入
新版本中引入了可选的组件别名导入方式,你可以根据自己的喜好,使用import feffery_antd_components.alias as fac
代替常规的import feffery_antd_components as fac
,从而实现对fac中各组件名Antd
前缀的省略,譬如:
![](https://img2023.cnblogs.com/blog/1344061/202310/1344061-20231023182218180-48134967.png)
1.5 更多表单输入类组件新增只读模式
为了满足更多的静态表单展示需求,本次更新中为AntdCheckbox
、AntdCheckboxGroup
、AntdRadioGroup
、AntdSlider
、AntdSwitch
、AntdTransfer
、AntdCheckCardGroup
、AntdCheckCard
等组件新增参数readOnly
用于设置只读模式,以选择卡片组合为例:
![](https://img2023.cnblogs.com/blog/1344061/202310/1344061-20231023182220696-800736711.gif)
1.6 新增第三方外部图标库支持
针对fac中诸多可通过参数icon
设置图标代号从而直接使用AntdIcon
中内置图标的组件,新增了辅助参数iconRenderer
,默认为'AntdIcon'
,当设置为'fontawesome'
时,会将icon
参数的输入值作为css类名进行图标渲染,典型如fontawesome
(注意在项目assets
目录下放置好相关静态资源):
![](https://img2023.cnblogs.com/blog/1344061/202310/1344061-20231023182222625-205630015.png)
1.7 AntdMenu支持自定义组件型菜单项
配合参数menuItemKeyToTitle
,你可以使用任意的自定义元素内容充当菜单项标题:
![](https://img2023.cnblogs.com/blog/1344061/202310/1344061-20231023182224712-1922570058.png)
1.8 AntdTree重要新功能
新版本中针对树组件新增了多项重要新功能,具体有:
1.8.1 支持快捷树搜索
仅需要为AntdTree
设置有效参数searchKeyword
,即可快捷实现树搜索功能,还可通过参数highlightStyle
来自定义搜索高亮部分样式:
![](https://img2023.cnblogs.com/blog/1344061/202310/1344061-20231023182226612-1592106767.png)
1.8.2 同级拖拽约束
针对AntdTree
的可拖拽功能,如果你希望仅同级节点之间可拖拽,那么直接设置参数dragInSameLevel=True
即可~
1.8.3 节点状态样式及后缀内容
通过参数nodeCheckedStyle
、nodeUncheckedStyle
,可以分别自定义节点不同勾选状态下的样式:
![](https://img2023.cnblogs.com/blog/1344061/202310/1344061-20231023182228705-1864712531.png)
通过参数nodeCheckedSuffix
、nodeUncheckedSuffix
,则可以分别自定义节点不同勾选状态下的后缀额外元素:
![](https://img2023.cnblogs.com/blog/1344061/202310/1344061-20231023182230920-351913323.png)
1.8.4 新增节点可收藏功能
在很多常见应用中,针对树形结构控件,可以单独收藏各个树节点,现在在AntdTree
中可以轻松实现此类功能:
![](https://img2023.cnblogs.com/blog/1344061/202310/1344061-20231023182234557-1447170906.png)
1.8.5 节点滚动动作
新版本中,可通过更新参数scrollTarget
,实现向对应节点的滚动动作:
![](https://img2023.cnblogs.com/blog/1344061/202310/1344061-20231023182237989-665719025.gif)
1.9 标签页组件支持快捷右键菜单
AntdTabs
针对各标签页的标题新增快捷右键菜单功能,可以用来监听支撑很多针对标签页的快捷操作:
![](https://img2023.cnblogs.com/blog/1344061/202310/1344061-20231023182239971-1452883364.png)
1.10 AntdTable重要新功能
作为fac中的重型组件,AntdTable
在本次更新中也引入了多项新功能,其中主要的有:
1.10.1 支持任意层级表头合并
现在你可以利用AntdTable
轻松构建具有任意层级表头合并的数据表格:
![](https://img2023.cnblogs.com/blog/1344061/202310/1344061-20231023182242475-1252986962.png)
1.10.2 字段筛选新增树形筛选菜单支持
![](https://img2023.cnblogs.com/blog/1344061/202310/1344061-20231023182244875-1859297843.png)
1.10.3 字段可编辑功能新增变动字段监听
现在可以同时监听到具体是哪一列的单元格发生了编辑:
![](https://img2023.cnblogs.com/blog/1344061/202310/1344061-20231023182247159-1955323977.png)
1.11 时间、日期选择相关组件新增自定义页脚功能
新版本中,可以针对AntdDatePicker
等日期选择、时间选择相关组件,通过参数extraFooter
设置自定义页脚内容,以便配合回调函数实现更多快捷功能:
![](https://img2023.cnblogs.com/blog/1344061/202310/1344061-20231023182249260-521150538.png)
1.12 选择卡片组合可限制必须有选值
在设置参数allowNoValue=True
后,AntdCheckCardGroup
可限制不允许用户清空选值:
![](https://img2023.cnblogs.com/blog/1344061/202310/1344061-20231023182251637-365989544.gif)
1.13 水印组件支持多行水印、图片水印
新版本中,针对水印组件AntdWatermark
,新增对多行水印及图片型水印的支持:
![](https://img2023.cnblogs.com/blog/1344061/202310/1344061-20231023182255277-436586152.png)
![](https://img2023.cnblogs.com/blog/1344061/202310/1344061-20231023182257745-1651867189.png)
篇幅有限,以上只介绍了0.2.10
版本中的部分新功能,完整的更新内容介绍请移步官网了解更多:https://fac.feffery.tech/change-log-v0.2.10
以上就是本文的全部内容,对Dash
应用开发感兴趣的朋友,欢迎添加微信号CNFeffery
,备注“dash学习”加入我的技术交流群,一起成长一起进步。