0

だから私の問題はこれです。初めてローカルストレージプロキシからレコードを削除できます。しかし、もう一度実行すると、エラーが発生し、ストア内のすべてが未定義になり、もう存在しなくなったようになります。

 onTapRemoveKegelReminder: function(button) {
    console.log(button.getData());
    //Find and delete the button and the record
    var store = Ext.getStore('KegelReminders');
    store.load();
    store.filter('button_id', button.getData());
    var record = store.first();


    console.log(record);
    console.log(button.getData());
    console.log('Remove count'+ store.getCount());


    if (typeof record !== 'undefined'||record!=null ) {
        store.remove(record);
        store.sync();


        console.log('removed record correctly')
        this.trainingCount--;
        var rmButton = this.getKegelExercises().down('#container-' + button.getData());
        this.getKegelExercises().remove(rmButton);

    }

しかし、アプリケーションを再起動してから再度削除すると、正常に機能します。アプリケーションを再起動せずに複数回削除できないようです。

4

1 に答える 1

3

他の誰かがこれを見つけた場合の参考までに、ストアからレコードを削除すると、ストレージ メカニズム (ローカル ストレージなど) からではなく、ストアのそのインスタンスからのみレコードが削除されます。これを行うには、モデル オブジェクトでeraseメソッドを使用する必要があります。

store.remove(record); // may not even be necessary
record.erase();
store.sync();
于 2013-02-07T20:14:58.807 に答える