【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…...
HTML 语义化
目录 HTML 语义化HTML5 新特性HTML 语义化的好处语义化标签的使用场景最佳实践 HTML 语义化 HTML5 新特性 标准答案: 语义化标签: <header>:页头<nav>:导航<main>:主要内容<article>&#x…...
深入剖析AI大模型:大模型时代的 Prompt 工程全解析
今天聊的内容,我认为是AI开发里面非常重要的内容。它在AI开发里无处不在,当你对 AI 助手说 "用李白的风格写一首关于人工智能的诗",或者让翻译模型 "将这段合同翻译成商务日语" 时,输入的这句话就是 Prompt。…...
C++:std::is_convertible
C++标志库中提供is_convertible,可以测试一种类型是否可以转换为另一只类型: template <class From, class To> struct is_convertible; 使用举例: #include <iostream> #include <string>using namespace std;struct A { }; struct B : A { };int main…...
在四层代理中还原真实客户端ngx_stream_realip_module
一、模块原理与价值 PROXY Protocol 回溯 第三方负载均衡(如 HAProxy、AWS NLB、阿里 SLB)发起上游连接时,将真实客户端 IP/Port 写入 PROXY Protocol v1/v2 头。Stream 层接收到头部后,ngx_stream_realip_module 从中提取原始信息…...
微服务商城-商品微服务
数据表 CREATE TABLE product (id bigint(20) UNSIGNED NOT NULL AUTO_INCREMENT COMMENT 商品id,cateid smallint(6) UNSIGNED NOT NULL DEFAULT 0 COMMENT 类别Id,name varchar(100) NOT NULL DEFAULT COMMENT 商品名称,subtitle varchar(200) NOT NULL DEFAULT COMMENT 商…...
MySQL 8.0 OCP 英文题库解析(十三)
Oracle 为庆祝 MySQL 30 周年,截止到 2025.07.31 之前。所有人均可以免费考取原价245美元的MySQL OCP 认证。 从今天开始,将英文题库免费公布出来,并进行解析,帮助大家在一个月之内轻松通过OCP认证。 本期公布试题111~120 试题1…...
数据库分批入库
今天在工作中,遇到一个问题,就是分批查询的时候,由于批次过大导致出现了一些问题,一下是问题描述和解决方案: 示例: // 假设已有数据列表 dataList 和 PreparedStatement pstmt int batchSize 1000; // …...
Maven 概述、安装、配置、仓库、私服详解
目录 1、Maven 概述 1.1 Maven 的定义 1.2 Maven 解决的问题 1.3 Maven 的核心特性与优势 2、Maven 安装 2.1 下载 Maven 2.2 安装配置 Maven 2.3 测试安装 2.4 修改 Maven 本地仓库的默认路径 3、Maven 配置 3.1 配置本地仓库 3.2 配置 JDK 3.3 IDEA 配置本地 Ma…...
Java求职者面试指南:Spring、Spring Boot、MyBatis框架与计算机基础问题解析
Java求职者面试指南:Spring、Spring Boot、MyBatis框架与计算机基础问题解析 一、第一轮提问(基础概念问题) 1. 请解释Spring框架的核心容器是什么?它在Spring中起到什么作用? Spring框架的核心容器是IoC容器&#…...
Golang——9、反射和文件操作
反射和文件操作 1、反射1.1、reflect.TypeOf()获取任意值的类型对象1.2、reflect.ValueOf()1.3、结构体反射 2、文件操作2.1、os.Open()打开文件2.2、方式一:使用Read()读取文件2.3、方式二:bufio读取文件2.4、方式三:os.ReadFile读取2.5、写…...
