挂件
概述
挂件是应用的特殊页面,配置为挂件的页面可以被其他宿主应用作为组件引入。此特性可以使得其能跟随主应用更新,而宿主应用无需更新。
一个应用可以配置多个挂件,一个挂件也可以被多个宿主应用所引用。
manifest.json 文件
挂件在 manifest.json 中的 widgets 对象里进行定义,参考下面定义简例:
{
"package": "com.example.demo",
"router": {
"entry": "pages/Home",
"pages": {
"pages/Home": {
"component": "index"
},
"pages/Music": {
"component": "index"
}
},
// 挂件定义
"widgets": {
// 音乐挂件
"pages/Music": {
"id": "music2008",
// 挂件名(必填)
"name": "音乐服务",
// 挂件组件名(必填)
"component": "index",
// 可编辑路径
"params": {
// 挂件缩略图 (必填)
"previewImage": ["./music.png"],
"hpw": 0
}
}
}
}
}
复制代码
router.widgets[widgetPath]
用于定义单个挂件页面信息。
属性 | 类型 | 默认值 | 必填 | 描述 |
---|---|---|---|---|
id | Integer | - | 是 | 挂件唯一标识 |
name | String | - | 是 | 挂件中文名称,用于在切换选择等显示的名称 |
component | String | - | 是 | 表盘对应组件名,与 ux 文件名保持一致,例如'index' 对应 'index.ux' |
params | Object | - | 是 | 挂件参数,详见下面说明 |
params
挂件特有参数,用于挂件框架加载挂件和展示列表。
属性 | 类型 | 默认值 | 必填 | 描述 |
---|---|---|---|---|
previewImage | String | - | 是 | 字符串数组,数组每一项代表预览图片路径,用于在挂件商店、切换选择等显示的预览图 |
hpw | Integer | - | 否 | 高功耗提醒,0-无高功耗提醒,1-需要高功耗提醒,默认为 0 |
功能接口
如果您需要查询已安装的所有挂件,可以通过功能接口实现。请移步至此文档挂件管理
挂件使用
请移步至此文档挂件组件
挂件生命周期
1、挂件继承父页面的所有生命周期。
2、挂件使用if指令
移除时会触发onDestroy
, if指令
再显示等同于重新创建。
3、挂件使用show指令
控制显示隐藏时会触发onShow
和onHide
。
注意
挂件为单页面操作,不能使用路由跳转