复合组件
复合组件可包含一组原子组件或一组其他复合组件,也可包含原子组件和复合组件的组合。复合组件中嵌入了一些业务逻辑。ThingWorx 内置混搭、使用 SDK 创建的小组件是复合组件的一些示例。
创建复合组件时,请使用以下最佳实践。
复合组件的子组件
复合组件包含以下所有或部分子组件:
用户界面 (UI)
业务逻辑
模型以及服务
数据适配器
使用复合组件时,其中的一个子元件被视为顶层组件。顶层组件用作复合组件的访问点。
复合组件使用子组件的层次结构来建立顶层组件。在子组件层次结构中,级别最高的是用户界面,接下来是业务逻辑、模型以及服务、数据适配器,如下图所示:
例如,如果复合组件具有为其定义的用户界面,则该用户界面为该组件的访问点。如果复合组件不具有用户界面,但具有为其定义的模型,则访问点将为模型以及服务。如果没有为组件定义用户界面或模型,则访问点为数据适配器。
建议不要将顶层组件下方的所有子组件显示给用户。
复合组件的类型
可使用以下类型的复合组件:
内置混搭 - (不可编辑) 可使用参数配置或使用自定义 CSS 自定义。
建议尽可能将参数数保持为最小值。
使用 SDK 创建的小组件 - (不可编辑) 可使用参数配置或通过继承自定义。
业务逻辑 - 使用配置表或参数进行自定义。
例如,由组件模型和数据适配器组成的业务逻辑。
小工具 - 不可编辑
仪表板 - 不可编辑
动态菜单
配置复合组件
您可以使用配置表、参数或配置混搭来配置复合组件。配置值将被传递到顶层组件,该组件会进一步将值传递给相关性层次结构中的下游组件。例如,您可以使用具有键值对的配置表来更改组件的行为。配置表不是组件升级的一部分。
升级复合组件
复合组件及其子组件不应可编辑以支持升级。升级子组件时,复合组件不应断开。
自定义和扩展复合组件
根据需要扩展和自定义复合组件。有关详细信息,请参阅 扩展和自定义元件部分。
例如,请考虑要自定义和扩展出厂设置内置混搭的情况。出厂设置内置混搭处于不可编辑状态。要配置和扩展此内置混搭,请创建该组件的副本。自定义和扩展副本。使用配置表或参数将原始内置混搭替换为自定义内置混搭。