SAPUI5-如何使用formElement进行聚合?
我以前使用VBox实现了聚合。这将获取所有“问题”,并为每个问题创建一个文本框SAPUI5-如何使用formElement进行聚合?,sapui5,Sapui5,我以前使用VBox实现了聚合。这将获取所有“问题”,并为每个问题创建一个文本框 <VBox items="{path: 'view>questions', templateShareable: true}"> <items> <VBox class="sapUiTinyMargin" templateShareable="true"> <Text text="Question {view>Ord
<VBox items="{path: 'view>questions', templateShareable: true}">
<items>
<VBox class="sapUiTinyMargin" templateShareable="true">
<Text text="Question {view>OrderSequence}"/>
</VBox>
</items>
</VBox>
我也需要这样做,但是对于formElements。这能做到吗
<f:formElements>
<f:FormElement label="{i18n>radioLabel}">
<f:fields>
<Input value="{viewmodel>radioLabel}" id="__redioLabel"/>
</f:fields>
</f:FormElement>
</f:formElements>
它似乎不适用于UI5中的“项”元素有几个特点:
- 属性:通常是标量属性,如“标题”或“宽度”
- 事件:当某些事情发生时,如“按下”或“关闭”时触发
- 聚合:子实体的集合,如列表中的“项”
- 关联:相关控件,如输入字段的“标签”
另外,请注意,通常不需要为模板或其任何子级提供ID(示例中的输入具有ID),这是因为该元素不属于结果控件树的一部分。它只是用于克隆以基于模型列表创建“真实”元素
最后,在第一个示例中,VBox上有一个“templateShareable”属性。VBox没有这样的属性,所以它什么也不做(实际上,您在父VBox的“项”的绑定规范中正确地使用了它)。UI5中的元素有几个特征:
- 属性:通常是标量属性,如“标题”或“宽度”
- 事件:当某些事情发生时,如“按下”或“关闭”时触发
- 聚合:子实体的集合,如列表中的“项”
- 关联:相关控件,如输入字段的“标签”
另外,请注意,通常不需要为模板或其任何子级提供ID(示例中的输入具有ID),这是因为该元素不属于结果控件树的一部分。它只是用于克隆以基于模型列表创建“真实”元素
最后,在第一个示例中,VBox上有一个“templateShareable”属性。VBox没有这样的属性,所以它什么也不做(实际上,您在父VBox的“items”的绑定规范中正确地使用了它)。您可以使用VBox,然后将f:formElements放入项中。 或者使用标准列表
FormElements或容器没有聚合项。您可以使用VBox,然后将f:FormElements放入项中。 或者使用标准列表 FormElements或容器没有聚合项。解决方案是 表单上的聚合
<f:Form id="formCustomRadio" editable="true" visible="true" formContainers="{viewmodel>answers}">
非常感谢解决方案是
表单上的聚合
<f:Form id="formCustomRadio" editable="true" visible="true" formContainers="{viewmodel>answers}">
非常感谢只有当有一个Formelement时,此功能才有效。。。。如果有两个单独的表单元素(例如radioLabel和RadioCore),则只显示第二个表单元素……知道吗?这是因为实际上只能使用一个元素作为“模板”进行聚合绑定时。如果要为集合中的每个项生成两个不同的元素,则必须将其包装到包含元素中。因此,在您的示例中,我看到了两个版本:要么绑定周围表单的formContainers聚合,使FormContainer模板包含两个FormElements;要么使用不同的控件。这仅在有一个Formelement时有效。如果有两个单独的form元素(例如radioLabel和RadioCore),则仅显示第二个form元素。知道吗?这是因为实际上只能使用一个元素作为“模板”进行聚合绑定时。如果要为集合中的每个项生成两个不同的元素,则必须将其包装到包含元素中。因此,在您的示例中,我看到了两个版本:要么绑定周围表单的formContainers聚合,使FormContainer模板包含两个FormElements;要么使用不同的控件。实际上,这是完全错误的。如果您查看API文档,您将看到