Sapui5 返回浏览器后,视图中的属性丢失

Sapui5 返回浏览器后,视图中的属性丢失,sapui5,Sapui5,我注意到,如果使用浏览器后退按钮或导航回页面,应用程序的某个特定xml视图中的某些模型绑定似乎存在问题。 我可以在“网络”选项卡中看到,我的模型仍然加载良好,并且属性(“tlc”-图像的src文本)也在那里 但大多数情况下(并非所有时间-也很奇怪),我都会得到一个404未找到,因为它似乎对于列表中的大部分元素都是空的(所有元素都以相同的方式加载图像…): 当我最初使用此视图打开url或刷新页面时,它工作正常 以下是我的图像列表的定义: <List id="startListUpcomi

我注意到,如果使用浏览器后退按钮或导航回页面,应用程序的某个特定xml视图中的某些模型绑定似乎存在问题。 我可以在“网络”选项卡中看到,我的模型仍然加载良好,并且属性(“tlc”-图像的src文本)也在那里

但大多数情况下(并非所有时间-也很奇怪),我都会得到一个404未找到,因为它似乎对于列表中的大部分元素都是空的(所有元素都以相同的方式加载图像…):

当我最初使用此视图打开url或刷新页面时,它工作正常

以下是我的图像列表的定义:

<List id="startListUpcoming" class="upcomingList sapUiSmallMarginTop" showNoData="false" items="{
  path: 'startlist>/startlistElements',
  filters: [
    {
      path: 'competitors/0/isMarked',
      operator: 'EQ',
      value1: false
    }
  ]
}">
  <items>
    <CustomListItem type="Active" press="onClickStarter">
      <HBox>
        <VBox class="sapUiSmallMarginBegin sapUiSmallMarginTopBottom">
          <Image src="/img/flags/{startlist>competitors/0/athlete/nation/tlc}.png" error="onFlagError" width="50px" height="50px" />
          <Label text="{startlist>time}"/>
        </VBox>
        <VBox class="sapUiSmallMarginBegin sapUiSmallMarginTopBottom">
          <Link text="{startlist>competitors/0/athlete/firstName} {startlist>startlist>competitors/0/athlete/familyName}" press="onClickRiderName"/>
            <Label text="{startlist>competitors/0/horse/name}"/>
        </VBox>
      </HBox>
    </CustomListItem>
  </items>
</List>

正如我所说。大多数情况下,此列表中只有一个元素受此影响。。
有人知道为什么会这样吗?这是一个非常奇怪的问题。

对我来说,这是由不完整的实现造成的

例如:

如果Page1调用GetEntitySet,其中返回字段A、B和C

然后导航到第2页,在那里调用Update或GetEntity,其中只返回字段a和C

这会导致OData客户端缓存更新为空值


这可能不是你的问题。当我遇到这个问题时,我没有像你一样检查过OData对象。

我已经修复了它。问题是我在
attachRequestCompleted
回调中的视图上设置了模型,这导致了模型不完整(不确定原因):

我改变了:

oJSONModel.attachRequestCompleted(function(oEvent) {
    this.getView().setModel(oJSONModel);
}
致:


我使用纯JSON作为模型,而不是调用
GetEntitySet
。仍将检查是否可以以某种方式调试客户端缓存。谢谢你的回答
oJSONModel.attachRequestCompleted(function(oEvent) {
}
this.getView().setModel(oJSONModel);