2012-02-07 2 views
3

ExtJS 개발자가 ExtJS 4 Store API에서 reload() 메서드를 제거하기로 결정한 이유가 궁금합니다. 나는 그것이 나쁜 결정이라고 생각한다.ExtJS 4 : 동일한 매개 변수로 그리드를 다시로드하는 방법

여기 내 문제입니다. 나는 그리드의 저장소를 초기화하려면 다음 코드를 사용하고 있습니다 :

store.load({ 
    params: { 
     paramName: dynamicParameter 
    } 
}); 

주의 사항 위의 코드에서 dynamicParameter 변수를.

그런 다음 모눈에서 일부 레코드를 삭제하면 저장소를 다시로드해야합니다.

문제는 다음과 같습니다. 저장소를 다시로드하는 코드 세그먼트가 dynamicParameter 값을 알아야합니다. 레코드를 삭제하는

코드는 다음과 같다 : ExtJS로 4, reload() 기능은 더 이상 존재하지 않기 때문에

function deleteGridItems(grid, deleteUrl){ 
    // get selected rows 
    var records = grid.getSelectionModel().getSelection(); 

    // ...... (codes to send request for deletion is ignored) ...... 

    if(success){ 
     grid.getStore().reload(); 
    } 
} 

는 불행하게도, grid.getStore().reload() 위의 오류가 될 것입니다.

그래서 같은 매개 변수로 저장소를 다시로드하는 방법 ??

감사합니다.

답변

2

내가 잘못하지 않은 경우 load() 함수는 이전에 reload()와 똑같습니다. 시도 해봐.

http://www.sencha.com/forum/showthread.php?127673-Reload-Store-in-EXT-JS-4

+0

:

load: function(options) { // Loading quickly will cause data in the panel to break if (!this.isLoading()) { this.callParent(arguments); } }, 

나는 그리드에 문제를 경험하지 않은,하지만 당신은 매우 신속하게 새로 고침 버튼을 누르면 나무 가끔 오류 및 트리 구조의 휴식을 얻을)'함수를 호출합니다. 그러나'dynamicParameter'를 제출하지 않습니다. –

+0

load를 호출 할 때마다 매개 변수를 전달할 수도 있고 그렇지 않을 수도 있습니다. –

+0

업데이트 된 답변 확인, 도움이 될 것입니다 –

0

를 참조 또한 내선 JS 가게가 이미 있는지 여부를로드하기 전에 확인 표시하지 않습니다 :

당신은 그것을로드시마다()을 지정하는 대신 프록시 추가 PARAMS를 설정해야 데이터로드 중. 이유는 모르겠지만 Store 또는 TreeStore의 load() 메서드를 재정 의하여 해결할 수 있습니다. (나는`시도 부하 한

Uncaught TypeError: Cannot read property 'internalId' of undefined 
관련 문제