2017-04-30 4 views
0

브라우저 백 단추를 사용하거나 페이지로 다시 이동하면 응용 프로그램의 특정 XML보기에서 일부 모델 바인딩에 문제가있는 것으로 나타났습니다. 네트워크 탭에서 내 모델이 여전히 잘로드되어 있고 속성 ('tlc'- 이미지 src에 대한 텍스트)도 있음을 알 수 있습니다. 이 목록의 대부분은 단지 하나 개의 요소에 비어있는 것으로 보이기 때문에 내가 404를 얻을 수있는 모든로드 (찾을 수 없음 - 브라우저에서 다시 볼 때 속성보기가 누락되었습니다.

Property is loaded

그러나 시간 (매우 이상한 시간의 ALL)의 대부분이

이미지 같은 방법으로 ...) : 내가 페이지를 새로 고칠 때 내가 처음이 볼 수있는 URL을 열 때 또는

enter image description here

그것은 잘 작동합니다.

이는 이미지 내 목록이 정의하는 방법입니다

<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> 

내가 말했듯이. 대개이 목록의 한 요소 만이 영향을받습니다. 왜 이것이 사실 일지 모르는 사람이 있습니까? 정말 이상한 것입니다.

답변

0

해결했습니다. 내가 변경

:

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

에 :

문제는 내가 (왜 확실하지) 어떻게 든 모델이 불완전로 이끄는 attachRequestCompleted 콜백, 내부 뷰에 모델을 설정 한 것이 었습니다
oJSONModel.attachRequestCompleted(function(oEvent) { 
} 
this.getView().setModel(oJSONModel); 
0

나에게 이것은 불완전한 구현 때문입니다. 예를 들어

:

페이지 1이 필드 A, B 및 C가 반환되는 GetEntitySet를 호출하면

. 당신이 업데이트 또는 필드 A와 C가 반환됩니다 GetEntity를 호출 할 경우

는 그런 다음 페이지 2로 이동합니다.

이렇게하면 OData 클라이언트 캐시가 빈 값으로 업데이트됩니다.

이것은 문제가되지 않을 수 있습니다. 이 문제가 발생했을 때 OData 객체를 체크하지 않았습니다.

+0

일반 JSON을 모델로 사용하고 있는데 GetEntitySet을 호출하지 않습니다. 내가 어떻게 든 클라이언트 캐시를 디버깅 할 수 있는지 확인합니다. 답변 해주셔서 감사합니다 – puelo