【Dash】feffery_antd_components 简单入门示例

news2024/11/15 21:34:19

一、简单了解 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 fac

app = 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 模式启动服务器,这样可以在开发过程中提供更多调试信息。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/2067057.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

【工作记录】springboot中基于redis实现地理位置相关需求@20240822

背景 近期收到一个需求,有个事件管理系统,存储了用户上报上来的事件信息,其中包含了事件发生的经纬度,还有另外一个系统中保存了一系列的摄像头数据,也包含经纬度信息。 需求是这样的,用户点击某个事件的…

OpenSBI的PMP

概述 在RISC-V体系架构中,PMP是用于保护物理内存访问权限的机制。PMP机制允许为不同的物理内存区域指定访问权限(读、写、执行)。这种机制使得运行在RISC-V处理器上的软件只能访问被明确授权的物理地址空间,从而提高了系统的安全…

5.登录功能的开发

登录功能的开发 一、前端1.1首页跳转到登录页面1.2登录界面处理 二、后端2.1创建User实体类2.2创建UserDto类2.3创建UserServlet类 三、效果演示四、轻提示组件 一、前端 1.1首页跳转到登录页面 登录页面是一个单独的页面,我们需要从项目的首页跳转到登录页面。具…

OpenAI Whisper Cannot Import Numpy

题意:“OpenAI Whisper 无法导入 Numpy” 问题背景: I am trying to run the OpenAI Whisper model but running into the following error when trying to run my script: “我正在尝试运行 OpenAI Whisper 模型,但在运行脚本时遇到了以下…

【全网行为管理解决方案】上网行为系统有哪些?

全网行为管理系统是一种用于监控、管理和优化企业内部网络中所有用户活动及网络流量的技术解决方案。 这类系统可以帮助企业提高网络安全、优化网络性能,并确保网络使用符合公司政策及法规要求。以下是几种常用的上网行为管理系统: 一、安企神 特点&am…

防范小程序隐私合规风险,筑牢用户信任防线

随着国内APP软件生态的成熟,依托于头部APP的小程序逐渐成为零售、娱乐、出行等行业必选的获客渠道之一。较低的开发成本和成熟的用户营销功能,令小程序的数量在过去几年呈指数级增长。截止2023年,头部APP内集成的小程序总量已超千万。然而&am…

【业余玩儿AI】【文档问答】实操记录0822

电梯 前文回顾继续踩坑实录从头来过,docker部署Ollama我一定是被偷听了,大数据之神把我拉出泥潭时间回到白天,模型初窥时间回到开心的链接上Ollama那一刻 按捺住乱撞的小鹿,我去准备下文的剧情了 前文回顾 这里书接上文,上文说到: 目标是文档问答,先是本地部署了Marker,然后又…

计算机二级题--指针 章节

1.概念 1.函数名代表函数的入口地址 2.交换地址 1.*s,说明s是一个指针变量 2.s&k;说明让s指向k地址 3.所以*sk实际上与上面那句是等价的,因此m一直都没有什么变化依然是3 4.k是全局变量所以是5 3,7;改变s指向之后,又将值赋给了s指向的…

WS2812B硬件电路设计总结

一、WS2812b的电压是多少? WS2812B的电压通常在3.5到5.3V之间。 WS2812B是一种流行的可编程LED,也称为NeoPixel。它集成了RGB LED和控制电路,可以通过单个数据线进行串联连接。这种LED的输入电源电压范围为3.5到5.3V,这意味着它…

WPF中的XAML是如何转换成对象的?

起因 最近有遇到有小伙伴在实现TreeView不同层级使用不同数据模板时,遇到了一些问题。 经过查阅资料,我提供了两种解决方案。 第一种是使用TemplateSelector,这种方式可以根据ViewModel设置不同的数据模板。 第二种是根据数据动态创建数据…

中兴 随身WIFI 5产品参数

产品参数 无线参数无线速率2.4GHz, 300Mbps天线类型内置Wi-Fi天线软件功能手机App中兴ZTE Link APP Pro更多功能移动网络(4G/3G)接入、Wi-Fi接入、Wi-Fi加密认证、WebUI、PIN保护、FOTA升级等硬件规格接口Micro USB/标准SIM卡(2FF&#xff0…

软件测试 缺陷报告处理流程

系统软件 操作系统 软件缺陷 缺陷报告 当测试人员发现了一个缺陷,需要填写一份 缺陷报告 来记录这个缺陷,并通过这个缺陷报告告知开发人员所发生的问题————缺陷报告是测试人员和开发人员交流沟通的重要工具。 缺陷报告的组成 1、缺陷ID 缺陷编号&…

JuiceFS 在多云架构中加速大模型推理

在大模型的开发与应用中,数据预处理、模型开发、训练和推理构成四个关键环节。本文将重点探讨推理环节。在之前的博客中,社区用户 BentoML 和贝壳的案例提到了使用 JuiceFS 社区版来提高模型加载的效率。本文将结合我们的实际经验,详细介绍企…

Linux——网络(2)

一、通信 --- 不同主机上进程间的通信 1、IP和端口号 IP:标识网络中的一台主机 本质上 32位的整型数据 端口号: 标识某个进程 本质上 16位的整型数据 2、udp和tcp udp的特点: 1.无连接 2.不可靠 tcp的特点: 1.面…

【赵渝强老师】执行Oracle的冷备份与冷恢复

冷备份与冷恢复是指发生在数据库已经正常关闭的情况下进行的备份和恢复。由于此时数据库已经关闭,通过冷备份可以将数据库的关键性文件拷贝到另外存储位置。冷备份因为只是拷贝文件,因此备份的速度非常快。在执行恢复时,只需将文件再拷贝回去…

命令模式:如何利用命令模式实现手游后端架构?

成长路上不孤单😊【14后boy,C爱好者,持续分享所学,如有需要欢迎收藏转发😊😊😊😊😊😊😊!!!接上篇博文&#xf…

拍抖音在哪里去水印,三招教你快速掌握去水印技巧

在抖音上,我们经常会看到一些精彩的内容,想要保存下来,但往往视频上会有水印。本文将分享五个免费且高效的去除抖音视频水印的技巧,帮助你轻松保存无水印的视频。 技巧一:奈斯水印助手(小程序) 奈斯水印助手是一款专…

为技术博客添加评论功能:Gitalk 教程与实战

为技术博客添加评论功能:Gitalk 教程与实战 简介安装使用创建 Github Application方式1方式2 主页传送门:📀 传送 简介 Gitalk是一个基于 GitHub Issue 和 Preact 开发的评论插件。   Gitalk是一个现代、无后端、基于GitHub Issue的评论系…

基于单片机的程控电源显示控制电路设计

摘要 : 介绍了基于单片机程控电源显示控制电路的硬件设计和软件实现 , 该设计可以实现程控电源的输出显示和手动控制功能。 实践验证 , 该设计具有很好的使用效果和工程价值 。 关键词 : 程控电源 ; 显示控制 ; 单片机 0 引言 程控电源广泛地应用在…

python怎么写乘法表

代码如下: 代码详解(为了让自己理解): for i in range(1,10):# print(i,end )for j in range(1,i1):print(%s*%s%s %(i,j,i*j),end )print() 1. for i in range(1,10) 这是一个for循环语句,range(&…