Flet 是一个框架,使您能够以您喜欢的语言轻松构建实时 Web、移动和桌面应用程序,并与您的团队安全地共享它们。不需要前端经验。
适用于您的团队、周末项目、数据输入表单、自助服务终端应用程序或高保真原型的内部工具或仪表板 - Flet 是一个理想的框架,可以快速开发美观的交互式应用程序来为一组用户提供服务。
不再需要包含 JavaScript 前端、REST API 后端、数据库、缓存等的复杂架构。使用 Flet,您只需使用 Python 编写一个整体式有状态应用程序,即可获得多用户、实时单页应用程序 (SPA)。
要开始使用 Flet 进行开发,您只需要您最喜欢的 IDE 或文本编辑器。没有 SDK、没有数以千计的依赖项、没有复杂的工具 - Flet 有一个内置的 Web 服务器,带有资产托管和桌面客户端。
Flet UI 使用 Flutter 构建,因此您的应用程序看起来很专业,并且可以交付到任何平台。 Flet 通过将较小的“小部件”与命令式编程模型组合成即用型“控件”,简化了 Flutter 模型。
Flet 与语言无关,因此团队中的任何人都可以用自己喜欢的语言开发 Flet 应用程序。 Python 已经得到支持,接下来还会支持 Go、C# 等。
将 Flet 应用程序部署为 Web 应用程序并在浏览器中查看它。将其打包为适用于 Windows、macOS 和 Linux 的独立桌面应用程序。将其作为 PWA 安装在移动设备上,或通过适用于 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 = str ( int ( txt_number . value ) - 1 )
page . update ()
def plus_click ( e ):
txt_number . value = str ( 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 . AppView . WEB_BROWSER )
再次运行,现在你立即得到一个网络应用程序:
更多演示应用程序可以在图库中找到。