用途:帮助开发者按正确模式实现 Textual 应用的生命周期,包括初始化、挂载、屏幕管理、后台任务与优雅关闭,是构建健壮 TUI 应用的基础。
主要能力:定义 App 子类及 TITLE、SUB_TITLE、BINDINGS、CSS、THEME 等元数据;用同步的 compose() 产出 Header、Footer、Static 等顶层组件;在同步的 on_mount() 中加载配置、查询组件、用 set_interval() 设定时器、用 run_worker() 启动异步任务;用 action_* 方法响应按键,异步工作交给 worker;用 push_screen()、pop_screen()、switch_screen() 管理屏幕栈与模态对话框,并可通过 pop_screen(result) 返回值;在 on_unmount() 与异步 on_shutdown() 中保存状态、关闭连接。
使用方式:安装依赖 pip install textual(要求 Textual >= 0.45.0、Python 3.9+,语法高亮需 pip install "textual[syntax]"),然后继承 App 实现上述钩子并以 app.run() 启动。
适用场景:仪表盘自动刷新、多屏幕应用、模态对话框等终端界面。
限制与注意:compose() 与 on_mount() 为同步,不能在同步上下文 await,需用 run_worker;组件查询须在挂载后进行;定时器如需取消应保存返回的 ID 并用 remove_timer 移除;worker 中的异步异常需自行捕获并 notify,否则静默失败。资料未提供收费、价格与平台信息。