【Dash】feffery_antd_components 简单入门示例
一、简单了解 feffery_antd_components
简称 fac ,是一个基于 Ant Design 的 Dash 第三方组件,由Feffery 老师开源维护的 Python 网页开发组件库,它具有丰富的页面常用交互组件功能,使开发者可以使用纯Python的方式快速构建现代化的交互式Web应用。fac组件底层与Dash框架紧密结合,提供了包括通用、布局、导航、数据录入、数据展示、反馈等七大类功能,拥有多达109个组件,覆盖了各种常用应用功能需求。
fac 组件库主要特点包括:
1、丰富的组件类型,提供超过100个组件,满足不同开发需求
2、简洁的Python接口,降低学习成本
3、遵循 Ant Design 设计规范
4、支持多语言,可设置不同的语言环境
5、支持静态资源通过 CDN 加载,加速应用访问速度
6、减少应用初始加载时间,按需加载资源
7、利用批量属性监听,提升回调函数编排效率,简化代码
二、简单入门代码
import dash
from dash import html
import feffery_antd_components as facapp = dash.Dash(__name__)app.layout = html.Div([fac.AntdTitle('您好! Dash', level=2),fac.AntdDivider(lineColor='red', isDashed=True),fac.AntdText('Dash 版本:%s' % dash.__version__,underline=True),fac.AntdDivider('分割线', lineColor='#6EAA82', isDashed=True,fontColor='#4F78B0',fontStyle='italic'),fac.AntdText('fac版本%s' % fac.__version__),fac.AntdText('Hello, here is Garcia.',style={'position': 'fixed',# 'top': '40%','left': '50%','color': '#907DAC','fontSize': '30px','fontWeight': 'bold', # "normal" "bold" "bolder" "lighter"'fontStyle': 'italic' # "normal"}),fac.AntdDivider(lineColor='red', isDashed=True),fac.AntdAlert(message='Hello Dash!',description=f'Dash 版本:{dash.__version__}, fac版本:{fac.__version__}',type='info',showIcon=True),
])if __name__ == '__main__':app.run_server(debug=True)
输出:

三、代码解读
import dash from dash import html import feffery_antd_components as fac
- 导入 Dash 库,Dash 是一个用于构建 Web 应用的 Python 框架
- 从 dash 库中导入 html 模块,该模块提供了创建 HTML 元素的类
- 导入 feffery_antd_components 库,并将其重命名为 fac ,以便在代码中简化引用
app = dash.Dash(__name__)
- 创建 Dash 应用实例,使用魔术变量 __name__ 作为应用的名称
app.layout = html.Div([fac.AntdTitle('您好! Dash', level=3),fac.AntdDivider(lineColor='red', isDashed=True),fac.AntdText('Dash 版本: %s' % dash.__version__, underline=True),fac.AntdDivider('分割线', lineColor='#6EAA82', isDashed=True,fontColor='#4F78B0',fontStyle='italic'),fac.AntdText('fac 版本%s' % fac.__version__),fac.AntdText('Hello, here is Garcia.',style={'position': 'fixed','left': '50%','color': '#907DAC','fontSize': '30px','fontWeight': 'bold','fontStyle': 'italic'}),fac.AntdDivider(lineColor='red', isDashed=True),fac.AntdAlert(message='Hello Dash!',description=f'Dash 版本:{dash.__version__}, fac版本:{fac.__version__}',type='info',showIcone=True), ])
app.layout = html.Div([ ... ])
- 定义应用的布局,使用 html.Div 作为容器,放置多个子组件
fac.AntdTitle('您好! Dash', level=2),
- 创建一个标题组件 AntdTitle ,标题级别为2
fac.AntdDivider(lineColor='red', isDashed=True),
- 用 AntdDivider 创建一条分割线,设置为红色,虚线。
fac.AntdText('Dash 版本:%s' % dash.__version__, underline=True),
- 用 AntdText 创建文本组件,显示 Dash 版本信息,并添加下划线
fac.AntdDivider('分割线', lineColor='#6EAA82', isDashed=True,fontColor='#4F78B0',fontStyle='italic'),
- 再次创建分割线,设置不同颜色、文字、字体等。
fac.AntdText('fac版本%s' % fac.__version__), fac.AntdText('Hello, here is Garcia.',style={'position': 'fixed',# 'top': '40%','left': '50%','color': '#907DAC','fontSize': '30px','fontWeight': 'bold', # "normal" "bold" "bolder" "lighter"'fontStyle': 'italic' # "normal"}),
- 创建 AntdText 文本组件,显示fac的版本信息
- 再创建一个 AntdText ,具有内联样式设置,包括位置、颜色、字体大小和粗细以及风格
fac.AntdDivider(lineColor='red', isDashed=True), fac.AntdAlert(message='Hello Dash!',description=f'Dash 版本:{dash.__version__}, fac版本:{fac.__version__}',type='info',showIcon=True ),
- 创建分割线,红色虚线
- 创建一个警告提示组件 AntdAlert,显示一条信息和描述,类型为“info”, 并显示图标
if __name__ == '__main__':app.run_server(debug=True)
- 判断是否是直接运行脚本,如是则启动 Dash 服务器
- 使用 debug 模式启动服务器,这样可以在开发过程中提供更多调试信息。
相关文章:
【Dash】feffery_antd_components 简单入门示例
一、简单了解 feffery_antd_components 简称 fac ,是一个基于 Ant Design 的 Dash 第三方组件,由Feffery 老师开源维护的 Python 网页开发组件库,它具有丰富的页面常用交互组件功能,使开发者可以使用纯Python的方式快速构建现代…...
JAVA学习-练习试用Java实现“路径交叉”
问题: 给定一个整数数组 distance 。从 X-Y 平面上的点 (0,0) 开始,先向北移动 distance[0] 米,然后向西移动 distance[1] 米,向南移动 distance[2] 米,向东移动 distance[3] 米,持续移动。也就是说&#…...
element组件封装
1.上传组件 <!--文件上传组件--> <template><div class"upload-file"><el-uploadref"fileUpload"v-if"props.type default":action"baseURL other.adaptationUrl(props.uploadFileUrl)":before-upload"h…...
Mysql (面试篇)
目录 唯一索引比普通索引快吗 MySQL由哪些部分组成,分别用来做什么 MySQL查询缓存有什么弊端,应该什么情况下使用,8.0版本对查询缓存由上面变更 MyISAM和InnoDB的区别有哪些 MySQL怎么恢复半个月前的数据 MySQL事务的隔离级别ÿ…...
【python】深入探讨python中的抽象类,创建、实现方法以及应用实战
✨✨ 欢迎大家来到景天科技苑✨✨ 🎈🎈 养成好习惯,先赞后看哦~🎈🎈 🏆 作者简介:景天科技苑 🏆《头衔》:大厂架构师,华为云开发者社区专家博主,…...
微前端传值
在微前端架构中,不同子应用之间通过 postMessage 进行通信是一种常见的做法。这种方式允许不同源的窗口之间进行安全的信息交换。 下面是如何使用 postMessage 在微前端环境中发送和接收消息的示例。 步骤 1: 发送消息 假设您有一个主应用(host app&a…...
《学会 SpringBoot · 依赖管理机制》
📢 大家好,我是 【战神刘玉栋】,有10多年的研发经验,致力于前后端技术栈的知识沉淀和传播。 💗 🌻 CSDN入驻不久,希望大家多多支持,后续会继续提升文章质量,绝不滥竽充数…...
全网行为管理软件有哪些?5款总有一款适合你的企业!
如今企业越来越依赖互联网进行日常运营和业务发展,网络行为管理变得日益重要。 为了确保网络安全、提高员工工作效率、避免敏感信息外泄等问题,企业往往需要借助全网行为管理软件来监控和管理内部网络的使用情况。 本文将为您介绍五款热门的全网行为管理…...
以简单的例子从头开始建spring boot web多模块项目(二)-mybatis简单集成
继续使用以简单的例子从头开始建spring boot web多模块项目(一)中的项目进行mybatis集成。 1、pom.xml文件中,增加相关的依赖包的引入,分别是mybatis-spring-boot-starter、lombok、mysql-connector-java 如下: <d…...
Golang | Leetcode Golang题解之第354题俄罗斯套娃信封问题
题目: 题解: func maxEnvelopes(envelopes [][]int) int {n : len(envelopes)if n 0 {return 0}sort.Slice(envelopes, func(i, j int) bool {a, b : envelopes[i], envelopes[j]return a[0] < b[0] || a[0] b[0] && a[1] > b[1]})f : …...
jmeter中添加ip欺骗
1、首先在本机电脑中通过配置文件创建添加ip的配置文件,先创建一个txt格式的,直接修改文件名以及后缀为ips.bat 2、编辑该ips.bat文件,在文件中输入如下内容,用于快速给本机添加ip地址,(2,1&…...
WPF篇(19)-TabControl控件+TreeView树控件
TabControl控件 TabControl表示包含多个共享相同的空间在屏幕上的项的控件。它也是继承于Selector基类,所以TabControl也只支持单选操作。另外,TabControl的元素只能是TabItem,这个TabItem继承于HeaderedContentControl类,所以Ta…...
appium下载及安装
下载地址:https://github.com/appium/appium-desktop/releases 双击安装就可以...
XSS项目实战
目录 一、项目来源 二、实战操作 EASY 1 2 3 4 5 6 7 8 一、项目来源 XSS Game - Learning XSS Made Simple! | Created by PwnFunction 二、实战操作 EASY 1 1.Easy -1 2.题目要求及源码 Difficulty is Easy.Pop an alert(1337) on sandbox.pwnfunction.com.No …...
SD-WAN降低网络运维难度的关键技术解析
为什么说SD-WAN(软件定义广域网)大大降低了网络运维的复杂性,主要是因为它的智能路径选择、应用识别和链路质量监测这三个核心技术。这几项在SD-WAN中尤为重要的技术,它们共同作用,提升了整体网络性能,为网…...
【算法基础实验】图论-最小生成树-Prim的即时实现
理论知识 Prim算法是一种用于计算加权无向图的最小生成树(MST, Minimum Spanning Tree)的贪心算法。最小生成树是一个连通的无向图的子图,它包含所有的顶点且总权重最小。Prim算法从一个起始顶点开始,不断将权重最小的边加入生成…...
LLama 3 跨各种 GPU 类型的基准测试
2024 年 4 月 18 日,AI 社区对 Llama 3 70B 的发布表示欢迎,这是一款最先进的大型语言模型 (LLM)。该型号是 Llama 系列的下一代产品,支持广泛的用例。该模型 istelf 在广泛的行业平台上表现良好,并提供了新…...
FreeRTOS 快速入门(五)之信号量
目录 一、信号量的特性1、信号量跟队列的对比2、两种信号量的对比 二、信号量1、二值信号量1.1 二值信号量用于同步1.2 二值信号量用于互斥 2、计数信号量 三、信号量函数1、创建2、删除3、give/take 一、信号量的特性 信号量(Semaphore)是一种实现任务…...
centos 服务器之间实现免密登录
为了在CentOS服务器之间实现免密登录,你需要使用SSH的公钥认证机制 比如两台centos系统的服务器A 和服务器B 首先我们实现从A服务器可以免密登录到服务器B上 首先生成公钥和秘钥: ssh-keygen -t rsa 生成了公钥和秘钥之后: ssh-copy-id r…...
RabbitMq实现延迟队列功能
1、rabbitmq服务端打开延迟插件 (超过 4294967295毫秒 ≈ 1193 小时 ≈ 49.7 天 这个时间会立即触发) 注意:只有RabbitMQ 3.6.x以上才支持 在下载好之后,解压得到.ez结尾的插件包,将其复制到RabbitMQ安装目录下的plug…...
Double Q-learning实战:如何用Python解决过估计问题(附代码示例)
Double Q-learning实战:如何用Python解决过估计问题(附代码示例) 强化学习中的Q-learning算法因其简洁高效而广受欢迎,但在某些场景下会出现严重的过估计问题。本文将深入探讨这一现象的本质,并手把手教你用Python实现…...
深入剖析Dynamic-Datasource:迭代器模式在数据源扩展中的完整实现指南
深入剖析Dynamic-Datasource:迭代器模式在数据源扩展中的完整实现指南 【免费下载链接】dynamic-datasource dynamic datasource for springboot 多数据源 动态数据源 主从分离 读写分离 分布式事务 项目地址: https://gitcode.com/gh_mirrors/dy/dynamic-dataso…...
原神抽卡记录导出工具:一键备份分析你的抽卡历史数据
原神抽卡记录导出工具:一键备份分析你的抽卡历史数据 【免费下载链接】genshin-wish-export biuuu/genshin-wish-export - 一个使用Electron制作的原神祈愿记录导出工具,它可以通过读取游戏日志或代理模式获取访问游戏祈愿记录API所需的authKey。 项目…...
NeoPixel Painter:嵌入式HSV动画的固定点实现
1. NeoPixel Painter 库概述NeoPixel Painter 是一个面向嵌入式 LED 动画开发的轻量级 Arduino 库,专为简化 WS2812B(NeoPixel)LED 灯带的动态效果编程而设计。它并非对 Adafruit_NeoPixel 库的简单封装,而是构建在其之上的状态驱…...
虚拟机自动化新范式:CUA Computer SDK十分钟入门指南
虚拟机自动化新范式:CUA Computer SDK十分钟入门指南 【免费下载链接】cua Create and run high-performance macOS and Linux VMs on Apple Silicon, with built-in support for AI agents. 项目地址: https://gitcode.com/GitHub_Trending/cua/cua 在当今的…...
Java大文件分片上传完整实现教程
解决网络不稳定、服务器内存压力和用户体验差等问题是大文件分片上传的必要性。1. 分片上传允许在网络中断后只重传失败分片,提高成功率;2. 减少服务器单次处理的数据量,减少内存和i/o压力;3. 支持断点续传和秒传功能,…...
想实现SpringCloud的负载均衡,需要实现哪些接口和规范
前几天有个大兄弟问了我一个问题,注册中心要集成SpringCloud,想实现SpringCloud的负载均衡,需要实现哪些接口和规范。既然这个兄弟问到我了,而我又刚好知道,这不得好好写一篇文章来回答这个问题,虽然在后面…...
鸿蒙ArkTS项目避坑指南:从零搭建外卖应用时,我踩过的那些‘坑’
鸿蒙ArkTS实战避坑手册:外卖应用开发中的12个致命陷阱 第一次在DevEco Studio里看到ArkTS的语法高亮时,我以为这不过是又一个前端框架的变种——直到我的外卖应用项目在模拟器上连续崩溃了七次。作为从Android原生开发转向鸿蒙的"老手"&#x…...
项目介绍 MATLAB实现基于RRT-Bezier快速搜索随机树算法(RRT)结合贝塞尔曲线拟合(Bezier)进行无人机三维路径规划的详细项目实例(含模型描述及部分示例代码) 还请多多点一下关注 加
MATLAB实现基于RRT-Bezier快速搜索随机树算法(RRT)结合贝塞尔曲线拟合(Bezier)进行无人机三维路径规划的详细项目实例 更多详细内容可直接联系博主本人 或者访问对应标题的完整博客或者文档下载页面(含完整的程序&a…...
别再为H5读Excel发愁了!UniApp里用FileReader+XLSX库的保姆级避坑指南
UniApp H5开发实战:Excel文件解析的深度解决方案 当你在UniApp中开发H5应用时,处理本地Excel文件可能会遇到一些独特的挑战。与标准Web环境不同,UniApp的混合架构对文件操作有着特殊限制和要求。本文将带你深入理解这些差异,并提供…...
