SAPUI5 - 具有两个数据模型的聚合控制
SAPUI 5 - Aggregated control with two data models
我有一个通用图块控件,该图块是根据可用实体的数量(例如:SCARRSet)创建的,这是正常的。然后在嵌套的 Tile 内容中,我需要显示图像路径存储在 JSON 文件中的航空公司徽标。我的想法是使用SCARRSet/Carrid中的key查找JSON文件找到图片路径。因此将为航空公司显示正确的图像。
之前我将图像路径放在 Url 字段中,这很好,但该字段用于其他用途。现在我想把它做好。
<l:HorizontalLayout id="hLayout1" allowWrapping="true" content="{flight>/SCARRSet}">
<GenericTile class="sapUiTinyMarginBegin sapUiTinyMarginTop tileLayout"
header="{flight>Carrname}"
subheader="{flight>Carrid}"
press="onTilePressed"
backgroundImage="">
<TileContent unit="{flight>Currcode}" footer="">
<ImageContent src="{flight>Url}" />
</TileContent>
</GenericTile>
</l:HorizontalLayout>
JSON 文件如下所示。有没有一种方法可以遍历每个图块以查找 Key = SCARRSet/Carrid 然后填充 imageContent src=(e.g.:"/image/AA.gif")?
{
"icon": [
{
"Key" : "AA",
"Path" : "/image/AA.gif"
},
...
]
}
我会使用 formatter function 进行查找:
src="{formatter: '.formatter.getIconUrl', path: 'flight>Carrid'}"
在格式化程序 getIconUrl
中,您将 Carrid
作为输入参数。
出于性能原因,我还建议重新格式化 JSON 一次,以便对 url 进行哈希访问: jsonData[carrid]
returns url .
我有一个通用图块控件,该图块是根据可用实体的数量(例如:SCARRSet)创建的,这是正常的。然后在嵌套的 Tile 内容中,我需要显示图像路径存储在 JSON 文件中的航空公司徽标。我的想法是使用SCARRSet/Carrid中的key查找JSON文件找到图片路径。因此将为航空公司显示正确的图像。
之前我将图像路径放在 Url 字段中,这很好,但该字段用于其他用途。现在我想把它做好。
<l:HorizontalLayout id="hLayout1" allowWrapping="true" content="{flight>/SCARRSet}">
<GenericTile class="sapUiTinyMarginBegin sapUiTinyMarginTop tileLayout"
header="{flight>Carrname}"
subheader="{flight>Carrid}"
press="onTilePressed"
backgroundImage="">
<TileContent unit="{flight>Currcode}" footer="">
<ImageContent src="{flight>Url}" />
</TileContent>
</GenericTile>
</l:HorizontalLayout>
JSON 文件如下所示。有没有一种方法可以遍历每个图块以查找 Key = SCARRSet/Carrid 然后填充 imageContent src=(e.g.:"/image/AA.gif")?
{
"icon": [
{
"Key" : "AA",
"Path" : "/image/AA.gif"
},
...
]
}
我会使用 formatter function 进行查找:
src="{formatter: '.formatter.getIconUrl', path: 'flight>Carrid'}"
在格式化程序 getIconUrl
中,您将 Carrid
作为输入参数。
出于性能原因,我还建议重新格式化 JSON 一次,以便对 url 进行哈希访问: jsonData[carrid]
returns url .