Flet
Flet 是一个框架,可让您轻松使用您喜欢的语言构建实时 Web、移动和桌面应用程序,并安全地与您的团队共享。无需前端经验。
⚡ 从想法到应用,只需几分钟
无论是内部工具还是团队仪表板、周末项目、数据录入表单、信息亭应用程序还是高保真原型——Flet 都是快速构建面向用户群体的、外观出色的交互式应用程序的理想框架。
? 简单的架构
告别 JavaScript 前端、REST API 后端、数据库、缓存等复杂架构。使用 Flet,您只需使用 Python 编写一个单一的、有状态的应用程序,即可获得多用户、实时的单页应用程序 (SPA)。
? 自带电池
要开始使用 Flet 进行开发,您只需要您喜欢的 IDE 或文本编辑器。无需 SDK、数千个依赖项、复杂的工具——Flet 内置了 Web 服务器和资产托管以及桌面客户端。
由 Flutter 驱动
Flet UI 是使用 Flutter 构建的,因此您的应用程序看起来专业,并且可以交付到任何平台。Flet 通过将较小的“小部件”组合成现成的“控件”,并采用命令式编程模型,简化了 Flutter 模型。
? 用您喜欢的语言交流
Flet 是语言无关的,因此您团队中的任何人都可以使用他们喜欢的语言开发 Flet 应用程序。 Python 已支持,Go、C# 等语言 即将推出。
? 交付到任何设备
将 Flet 应用部署为 Web 应用并在浏览器中查看。将其打包为 Windows、macOS 和 Linux 的独立桌面应用。作为 PWA 安装在移动设备上,或通过 Flet 应用在 iOS 和 Android 上查看。
Flet 应用示例
目前您可以使用 Python 编写 Flet 应用,很快将添加其他语言。
这是一个“计数器”应用的示例
import flet
from flet import IconButton, Page, Row, TextField, icons
def main(page: Page):
page.title = "Flet counter example"
page.vertical_alignment = "center"
txt_number = TextField(value="0", text_align="right", width=100)
def minus_click(e):
txt_number.value = int(txt_number.value) - 1
page.update()
def plus_click(e):
txt_number.value = int(txt_number.value) + 1
page.update()
page.add(
Row(
[
IconButton(icons.REMOVE, on_click=minus_click),
txt_number,
IconButton(icons.ADD, on_click=plus_click),
],
alignment="center",
)
)
flet.app(target=main)
要运行该应用,请安装 flet 模块
pip install flet
并运行程序
python counter.py
该应用将在原生操作系统窗口中启动——这是 Electron 的一个很好的替代方案!
现在,如果您想将应用作为 Web 应用运行,只需将最后一行替换为
flet.app(target=main, view=flet.WEB_BROWSER)
再次运行,您就可以立即获得一个 Web 应用

