SAPUI5 :是否可以在绑定过滤器中进行嵌套绑定



我有一个 xml 视图,其TabFilterBar包含两个IconTabFilter。 第一个IconTabFilter的属性count绑定如下:

count="{/TestDataSet(Systemid='XYZ', Version='1.0')/Value1}"

对于第二个IconTabFilter

count="{/TestDataSet(Systemid='XYZ', Version='1.0')/Value2}"

在绑定内部,我进行了过滤。 目前,SystemidVersion的筛选器值只是硬编码的。

我现在想从模型中读取过滤器值。

为此,我创建了一个 JSON 模型filterModel。在这个模型中,我有一个用于Systemid的属性和一个用于Version的属性。它保存此属性的实际值。

我能够在 XML 视图中使用和读取新模型及其属性:

{filterModel>systemid}
{filterModel>version}

我试图知道将其包含在我的IconTabFilter绑定中。 它看起来像这样:

<IconTabBar id="TabFilterBar">
<items>
<IconTabFilter id="TabFilterOne" icon="sap-icon://database" iconColor="Neutral" text="{i18n>TabFilterOne}" count="{/TestDataSet(Systemid='{filterModel>systemid}', Version='{filterModel>version}')/Value1}"/>
<IconTabFilter id="TabFilterTwo" icon="sap-icon://check-availability" iconColor="Neutral" text="{i18n>TabFilterTwo}" count="{/TestDataSet(Systemid='{filterModel>systemid}', Version='{filterModel>version}')/Value2}"/>
</items>

但这行不通。

如何进行存档以使用嵌套在绑定筛选器中的绑定?

我认为不可能真正嵌套道具。我会按以下方式这样做:

<IconTabBar id="TabFilterBar" binding="{/TestDataSet(Systemid='XYZ', Version='1.0')}">
<items>
<IconTabFilter count="{Value1}" id="TabFilterOne" icon="sap-icon://database" iconColor="Neutral" text="{i18n>TabFilterOne}"/>
<IconTabFilter count="{Value2}" id="TabFilterTwo" icon="sap-icon://check-availability" iconColor="Neutral" text="{i18n>TabFilterTwo}"/>
</items>
</IconTabBar>

每当从控制器内更改筛选器时,都会更新IconTabBar的绑定。类似的东西

this.getView().byId("TabFilterBar").bindObject("/TestDataSet(Systemid='ABC', Version='47.11')")

应该这样做

最新更新