2012-09-12 2 views
2

나는 일종의 혼란을 계승하고 그것을 고치기위한 짧은 시간 밖에 없다. 내 문제는 무한 스크롤을 사용하여 상점/그리드를 사용하는 버그를 수정하려고한다는 것입니다. 사용자가 격자를 정렬하려고하면 "로드 중"이라는 메시지가 나타나고 그 것입니다.remoteSort를 사용하는 저장소 정렬에서 어떤 방법으로 시작됩니까?

중단 점 serverside를 넣었으며 서버를 다시 호출하고 올바른 열을 전달하지만 "로드 중"메시지가 표시되지 않습니다.

나는 정렬이 해고되기 전후에 어떤 이벤트가 필요한지 찾고 있습니다. load, beforesync 및 기타 모든 항목에 대한 console.log 문이 저장소에 있습니다 (http://docs.sencha.com/ext-js/4-0/#!/api/Ext.data.Store). 내가 그리드에서 듣고 싶은게 있니?

여기

grid store event: ["beforeload", i, Object] 
pageSize = 100 
grid store event: ["beforeprefetch", i,i] 
before prefetch done 
proxy.read done 
end of prefetch 
grid panel event: ["sortchange", i, i, "DESC"] 
grid panel event: ["beforestatesave", i, Object] 
grid store event: ["totalcountchange", 2] BufferedStore.js:22 
grid store event: ["prefetch", i, Array[2], true,i] 

답변

1

'sortchange'이벤트는 그리드에 발사한다 ... 프리 페치 최우선과 console.logs의 로그입니다. 'beforeload'이벤트는 새 데이터를 얻기 위해 서비스 호출을하기 전에 실행해야합니다. 'load'이벤트는 서비스 호출에서 데이터가 다시 돌아 오면 실행됩니다.

그리드가 생성되고 참조가있는 경우, 예를 들어 'rolocGrid'와 같이 더 자세히 디버깅하려면 Observable 유틸리티를 사용하여 그리드와 해당 저장소의 모든 이벤트를 모니터링하십시오. 이 조각은 각 이벤트에 대해 콘솔에 기록합니다

그 과정에서 무슨에 당신에게 통찰력을 제공합니다 :

Ext.util.Observable.capture(rolocGrid.store, function() { console.log('grid store event:', arguments)}, rolocGrid);           
Ext.util.Observable.capture(rolocGrid, function() { console.log('grid event:', arguments)}, rolocGrid); 
+0

달콤한 덕분에 나는이 시도 내일 줄 것이다! 특히 디버깅 팁을 고맙게 생각합니다. – Roloc

+0

위의 프리 페치 출력을 첨부했습니다. 이상한 것을 보시겠습니까? 그것은 프리 페치를 통해 모든 길을 얻습니다. 다음에 무엇이 올 예정입니까? 프리 페치가 끝나면 더 이상로드되지 않는다고 할 수있는 일이 있습니까? – Roloc

+0

상점에서로드 이벤트가 실행되어야합니다. 그것 없이는 상점은 여전히 ​​그것이 데이터를 기다리고 있다고 생각합니다. 저장소 구성,보기 높이 및 다시 오는 데이터가 어떻게 든 일치하지 않아야합니다. 구성 및 응답 데이터에 대한 추가 액세스가 없으면 알기가 어렵습니다. –

관련 문제