Skip to content

导语

为了写出满意的自定义UI,LazyTea的一些行为是必须明白的。

规范

阅读相应一级组件文档,得到具体规范。

一般来说,你需要正确设置元数据,并通过后端接口注册器提供恰当的HTML响应器。

此外,在HTML中对于lazytea-API的调用应当局限于自定义接口API,而不应该使用其他API,如/bots等。

这是因为只有lazytea-web实现了其他API,而自定义接口API是所有二级组件都支持的。

行为

模板渲染机制

系统支持两种HTML渲染模式:

后端预渲染模式: 后端直接返回已渲染的HTML内容 动态模板渲染: 使用Jinja2引擎在前端动态渲染模板 动态渲染时,系统会为模板注入以下上下文变量:

  • request: FastAPI请求对象 (如果存在)
  • plugin_name: 插件名称
  • api_base_url: API基础URL
  • version: 系统版本信息
  • 插件自定义上下文变量

自定义请求API

插件可以通过 /api/plugin/{plugin_name}/custom_request 端点处理自定义API请求。

请求方法:POST

请求数据结构 自定义请求使用PluginCustomRequest模型,包含以下字段:

  • method: 要调用的后端方法名
  • params: 方法参数字典
  • timeout: 请求超时时间 (整数/秒)

错误处理

  • 方法未找到时返回404状态码
  • 一般异常返回500状态码
  • 只读模式下返回403状态码

运行环境

html方案的页面将运行于浏览器中,并与一个来自lazytea-clientlazytea-web的HTTP服务器通信。

优势

  • 所见即所得
  • 快速开发迭代
  • 唾手可得的美观
  • 跨平台与本地支持

劣势

  • 性能劣于PySide6
  • 自定义程度受限

hlfzsi@outlook.com