2

グリッドストアがあり、を使用して変更されたデータを取得できます

var modifiedData = store.getModifiedData();

ここで、削除されたレコードを取得したいと思います(ExtJs 3を使用しています)。

使ってみvar deletedData = store.getRemovedRecords();ましたが、このプロパティはExtJs4で利用できると思います。

グリッドから削除されたレコードをフェッチしたいだけです。どんな助けでもいただければ幸いです。

4

2 に答える 2

6

デフォルトでは、これは不可能です。

ExtJS 3.xは、変更されたレコードのみを追跡できます(箱から出して)。削除された(削除された)レコードは完全に削除されます。しかし、できることが1つあります。ストアは、レコード自体を2番目の引数として、各レコードの削除イベントを発生させます。これを使用して、削除されたレコードの独自の配列を作成できます。実装は本当に簡単だと思います。インスタンスごとに実行することも、拡張してまったく新しいストアタイプを作成することもできます。しかし、ここでは後者は実際には必要ないと思います。

これが例です。removedListをクリアするには、他のイベントを処理する必要がある場合があることに注意してください。

var myStore = new Ext.data.Store({
    removedList: [],
    listeners: {
        clear: function(store) {
              store.removedList =  [];
        },
        load: function(store) {
              store.removedList =  [];
        },
        remove: function(store, record, index) {
              store.removedList.push(record);
        }
    }
});
于 2013-01-20T09:31:59.677 に答える
-1

これらの2つのリンクをチェックしてください。彼らは役に立つかもしれません。

http://www.sencha.com/forum/showthread.php?58888-Store-find-deleted-added-recordsmihttp://www.sencha.com/forum/showthread.php?15671-Ext.data _ 永続性のあるストア

于 2013-01-19T11:54:57.047 に答える