2012-11-18 2 views
0

나는 KendoUI를 webSQL과 같은 멋진 데이터 소스에 연결할 수있는 사용자 정의 전송을 만들고 있습니다. 내 Kendo Grid 문제는 delete/destroy 명령을 구현할 때 데이터 소스 레이어가 오류로 응답 한 경우에도 그리드가 실제 제거 행에서 벗어나는 것을 방지 할 수 없다는 것입니다.KendoUI Grid - 제거 행에서 롤백

RemoteTransport.destroy 메서드를 통해 호출됩니다. 입력 매개 변수에 오류와 성공 콜백이 포함되어 있지만 오류 콜백을 호출하거나 "false"를 반환하거나 결국 거부하는 $ .Deferred를 반환하려고해도 그 행은 사라집니다. 사실 제가 전화 받기 전에 사라 졌어요.

답변

1

그리드에서 cancelChanges 메소드를 원한다고 생각합니다.

http://docs.kendoui.com/api/web/grid#cancelchanges

KendoUI 포럼에서 응답이이 데이터 소스 내의 예외를 발생할 데이터 영역 부분 RemoteTransport 호출

거부 ​​핸들러로부터 UI 부 디커플링 도움 . DataSource 정의에서 이 실제로 cancelChanges를 호출하는 에러 핸들러 또는 컨트롤 이 갖는 롤백 메소드를 배치하십시오. 아직 불완전하지만 - 적어도 할 수있는.

+0

감사합니다. 내 코드는 RemoteTransport이며 그리드 또는 다른 종류의 UI 구성 요소에 대한 지식이 전혀 없습니다. 단지 데이터 계층 일뿐입니다. 그래서 나는 클라이언트 컨트롤과 직접 이야기 할 수 없다. –

+0

죄송합니다. 그리드에서 "cancelChanges"를 호출 할 수 있어야합니다. 그리드는 데이터 소스에 대한 지식을 가지고 있습니까? 통화가 실패한 시점을 알 수 있습니다. 표에 대한 참조를 가져올 수 없으며 "cancelChanges"를 호출 할 수 있습니까? –

+0

KendoUI 포럼에서도 데이터 부분의 UI 부분을 분리하는 데 도움이되는 응답을 받았습니다. RemoteTransport에서 나는 DataSource에서 예외를 일으키는 거부 처리기를 호출해야합니다. 데이터 소스에서 오류 처리기를 배치하려면 실제 cancelChanges를 수행하거나 컨트롤에있는 모든 롤백 메서드를 수행해야합니다. 아직 불완전하지만 - 적어도 할 수있는. –