Python网页应用开发神器fac 0.2.10版本新功能介绍

fac项目地址:https://github.com/CNFeffery/feffery-antd-components

欢迎star支持⭐

大家好我是费老师,由我开源维护的Python网页通用组件库fac前不久更新至0.2.10新版本,使用下列命令可快速完成更新:

bash 复制代码
pip install feffery-antd-components -U -i https://mirrors.aliyun.com/pypi/simple/

0.2.10虽然只是个小版本,但足足经过一个夏天的陆续积累更新,积攒了非常丰富的新功能新特性,下面我就来为大家介绍其中的主要更新内容:

1 fac 0.2.10版本新功能介绍

1.1 新组件:AntdCenter

新增居中组件AntdCenter,用于快捷实现内部元素在水平、竖直方向上的居中展示:

1.2 新机制:静态资源懒加载

随着fac功能的日渐丰富,随之而来的是其静态资源的增长,即使在dash.Dash()中开启了compress=True进行压缩,也有大几百kb。

而从0.2.10开始,通过重构fac底层逻辑,实现了AntdTable、上传类组件、数据录入类组件、数据展示类组件的懒加载。用户初始访问我们的dash应用时将只会请求体积较小的基础静态资源,当页面中实际进行对应懒加载组件的渲染时,才会即时的请求相应资源,大幅度降低了通过互联网所部署dash应用的带宽压力。

1.3 新特性:批量属性监听

新版本中针对部分组件新增批量属性监听 功能,使得我们可以在回调编排中通过batchPropsValues这一个属性,对batchPropsNames所定义的多个属性值的打包监听,从而帮助我们提升回调函数编排效率,以AntdTree为例,同时打包监听了多个属性值变化情况:

1.4 组件简化导入

新版本中引入了可选的组件别名导入方式,你可以根据自己的喜好,使用import feffery_antd_components.alias as fac代替常规的import feffery_antd_components as fac,从而实现对fac中各组件名Antd前缀的省略,譬如:

1.5 更多表单输入类组件新增只读模式

为了满足更多的静态表单展示需求,本次更新中为AntdCheckboxAntdCheckboxGroupAntdRadioGroupAntdSliderAntdSwitchAntdTransferAntdCheckCardGroupAntdCheckCard等组件新增参数readOnly用于设置只读模式,以选择卡片组合为例:

1.6 新增第三方外部图标库支持

针对fac中诸多可通过参数icon设置图标代号从而直接使用AntdIcon中内置图标的组件,新增了辅助参数iconRenderer,默认为'AntdIcon',当设置为'fontawesome'时,会将icon参数的输入值作为css类名进行图标渲染,典型如fontawesome(注意在项目assets目录下放置好相关静态资源):

1.7 AntdMenu支持自定义组件型菜单项

配合参数menuItemKeyToTitle,你可以使用任意的自定义元素内容充当菜单项标题:

1.8 AntdTree重要新功能

新版本中针对树组件新增了多项重要新功能,具体有:

1.8.1 支持快捷树搜索

仅需要为AntdTree设置有效参数searchKeyword,即可快捷实现树搜索功能,还可通过参数highlightStyle来自定义搜索高亮部分样式:

1.8.2 同级拖拽约束

针对AntdTree的可拖拽功能,如果你希望仅同级节点之间可拖拽,那么直接设置参数dragInSameLevel=True即可~

1.8.3 节点状态样式及后缀内容

通过参数nodeCheckedStylenodeUncheckedStyle,可以分别自定义节点不同勾选状态下的样式:

通过参数nodeCheckedSuffixnodeUncheckedSuffix,则可以分别自定义节点不同勾选状态下的后缀额外元素:

1.8.4 新增节点可收藏功能

在很多常见应用中,针对树形结构控件,可以单独收藏各个树节点,现在在AntdTree中可以轻松实现此类功能:

1.8.5 节点滚动动作

新版本中,可通过更新参数scrollTarget,实现向对应节点的滚动动作:

1.9 标签页组件支持快捷右键菜单

AntdTabs针对各标签页的标题新增快捷右键菜单功能,可以用来监听支撑很多针对标签页的快捷操作:

1.10 AntdTable重要新功能

作为fac中的重型组件,AntdTable在本次更新中也引入了多项新功能,其中主要的有:

1.10.1 支持任意层级表头合并

现在你可以利用AntdTable轻松构建具有任意层级表头合并的数据表格:

1.10.2 字段筛选新增树形筛选菜单支持

1.10.3 字段可编辑功能新增变动字段监听

现在可以同时监听到具体是哪一列的单元格发生了编辑:

1.11 时间、日期选择相关组件新增自定义页脚功能

新版本中,可以针对AntdDatePicker等日期选择、时间选择相关组件,通过参数extraFooter设置自定义页脚内容,以便配合回调函数实现更多快捷功能:

1.12 选择卡片组合可限制必须有选值

在设置参数allowNoValue=True后,AntdCheckCardGroup可限制不允许用户清空选值:

1.13 水印组件支持多行水印、图片水印

新版本中,针对水印组件AntdWatermark,新增对多行水印及图片型水印的支持:

篇幅有限,以上只介绍了0.2.10版本中的部分新功能,完整的更新内容介绍请移步官网了解更多:https://fac.feffery.tech/change-log-v0.2.10


以上就是本文的全部内容,对Dash应用开发感兴趣的朋友,欢迎添加微信号CNFeffery,备注"dash学习"加入我的技术交流群,一起成长一起进步。

相关推荐
Hylan_J2 小时前
【VSCode】MicroPython环境配置
ide·vscode·python·编辑器
莫忘初心丶2 小时前
在 Ubuntu 22 上使用 Gunicorn 启动 Flask 应用程序
python·ubuntu·flask·gunicorn
失败尽常态5234 小时前
用Python实现Excel数据同步到飞书文档
python·excel·飞书
2501_904447744 小时前
OPPO发布新型折叠屏手机 起售价8999
python·智能手机·django·virtualenv·pygame
青龙小码农4 小时前
yum报错:bash: /usr/bin/yum: /usr/bin/python: 坏的解释器:没有那个文件或目录
开发语言·python·bash·liunx
大数据追光猿5 小时前
Python应用算法之贪心算法理解和实践
大数据·开发语言·人工智能·python·深度学习·算法·贪心算法
Leuanghing5 小时前
【Leetcode】11. 盛最多水的容器
python·算法·leetcode
xinxiyinhe6 小时前
如何设置Cursor中.cursorrules文件
人工智能·python
诸神缄默不语7 小时前
如何用Python 3自动打开exe程序
python·os·subprocess·python 3
橘子师兄7 小时前
分页功能组件开发
数据库·python·django