主页自定义组件
主页自定义组件(QWidget)让你用一个.qwidget 文件描述自己的主页卡片:布局、文本、按钮、输入框、媒体、数据请求、触发器和 TypeScript 函数都可以写在里面。它和插件提供的 dashboard:widgets 是两套机制:
打开编辑器
- 主页右上角点击 编辑布局。
- 点击工具条的 +。
- 在「自定义组件」区域点击 新建组件。
- XML:组件结构,带行号、语法高亮、折叠、搜索、Schema 补全和实时校验。
- 函数:编辑
Function.Script的 TypeScript,支持Input/Inputs/Data/Resources/Results/Host补全和「试运行」。
第一个组件
导入与导出
- 从 URL 导入:填入
https://.../*.qwidget,拉取并校验后加载;保存后会按 6 小时 TTL 静默检查更新。 - 导入文件:选择本地
.qwidget/.xml文件;相对路径以该文件所在目录为基准。 - 导出文件:保存当前 XML;本地
Widget.Using Name="..."依赖不会自动内联,导出前会提示缺失依赖。
域名确认
组件会自动访问的域名会列在右侧「允许访问的域名」中,包括:Data Source="Url"的数据源Widget UpdateUrl/ 在线导入来源Widget.Using Url的嵌套组件- 静态
Image/Media地址
在线更新与风险
在线组件按 6 小时 TTL 静默检查更新;数据、文本和布局更新不会确认。自定义组件可以运行 TypeScript、执行命令、调用插件 API 和读取本地文件,因此:- 远程组件导入或更新新增/修改可执行内容时确认;拒绝则保留旧 XML。
- 本地组件的字面量命令和用户输入命令不逐次确认。
- 在线数据生成命令时按最终命令哈希确认。
- 风险与来源规则见安全与信任策略。
- 请只使用你信任的组件。启动器开发者不对自定义组件造成的安全风险负责。
存储与限制
- 组件定义与数据缓存保存在本机
localStorage,布局沿用主页网格的本地存储。 - XML 上限 256KB,深度 16,元素 1000,数据源 8 个,列表渲染 200 项。
- 在线文本/JSON/XML 上限 1MB,二进制上限 8MB。
- 嵌套深度 5,单父组件最多 20 个嵌套实例。
- 函数脚本 64KB,默认超时 3 秒(最大 10 秒)。