Widget
组件根元素。一个.qwidget 文件只能有一个 Widget。
签名
属性
UpdateTTL / RefreshTTL 常量:
Default:使用启动器默认值(更新 6 小时;刷新不自动)Immediately:每次组件挂载时执行PreLaunch:每次启动器进程只执行一次PreLoad:每次切换到主页/重新挂载时执行None:不自动执行- 数字:秒数,例如
30表示 30 秒
ImageHosts
动态Image / Media 的图片、音视频和 poster 域名白名单:
- 支持精确域名、
*.example.com和* - 编辑器只需确认一次
ImageHosts,不需要逐张图确认 - 静态 URL 不要求确认
ImageHosts="*"表示允许所有 HTTPS 图片/媒体主机
子元素
Widget 的直接子元素可以是:
- 布局/控件节点:
Container、Row、Column、Grid、Text、Button、Dialog等 DataResourcesTriggersFunctionWidget.UsingWidget.Inputs/Widget.Outputs(组件契约)
Data 也可以出现在任意布局容器内;Resources、Triggers、Function 只允许放在根下。
属性元素
根属性也适用属性元素语法:运行时行为
- 解析并严格校验 XML:未知元素/属性、重复属性、非法 URL/枚举直接报错。
- 解析
Data并开始拉取;解析Resources;解析Function/Triggers。 - 执行
Loaded触发器。 - 渲染节点;父组件通过
Children读取快照;声明了Widget.Outputs时只暴露Children.<As>.Outputs。 - 在线组件按 6 小时 TTL 检查更新。
限制
- XML ≤256KB、深度 ≤16、元素 ≤1000。
- 数据源 ≤8、嵌套实例 ≤20。
- 未命名数据源默认名为
Data。