SAPUI 5 - 具有两个数据模型的聚合控制

问题描述 投票:0回答:1

我有一个通用的tile控件,根据可用的实体数量(例如:SCARRSet)创建tile,这是正常的。然后在嵌套的Tile内容中,我需要显示航空公司徽标,其中图像路径存储在JSON文件中。我的想法是使用SCARRSet / Carrid中的键来查找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文件如下所示。有没有办法迭代每个tile来查找Key = SCARRSet / Carrid然后填充imageContent src =(例如:“/ image / AA.gif”)?

{
  "icon": [
  {
    "Key" : "AA",
    "Path" : "/image/AA.gif"
  },
...
]
}
sapui5
1个回答
0
投票

我会使用formatter function进行查找:

src="{formatter: '.formatter.getIconUrl', path: 'flight>Carrid'}"

在格式化程序getIconUrl中,您将获得Carrid作为输入参数。

出于性能原因,我还建议重新格式化JSON一次以获得对url的哈希访问:jsonData[carrid]返回url。

© www.soinside.com 2019 - 2024. All rights reserved.