尝试从本地存储sencha touch中删除项目时,无法调用null的方法'destroy'

时间:2013-08-23 14:00:40

标签: extjs sencha-touch sencha-touch-2

无法调用null的方法'destroy',这是我的控制器按钮点击功能

onRemoveItemButtonTap: function(button, index, target, record){
var code = this.getValues().CODE,
    cartStore = Ext.getStore('CartStore'),
        myItem = cartStore.findRecord('CODE', code);
cartStore.remove(myItem);
cartStore.sync();        

我尝试使用cartStore.destroy(myItem)仍然引发同样的错误。我已经看到堆栈溢出的一些解决方案,但无法理解它们如何适用于我的问题。任何帮助将不胜感激。

1 个答案:

答案 0 :(得分:0)

经过调试和测试后,我发现以下答案添加了load(),然后是sync()

我添加了自动加载到我的商店但是当我尝试删除record时它没有工作。所以我再次加载它然后它工作正常

    onRemoveItemButtonTap: function(button, index, target, record){
    var code = this.getValues().CODE,
       cartStore = Ext.getStore('CartStore');
        cartStore.load();
        myItem = cartStore.findRecord('CODE', code);

        cartStore.remove(myItem);
        cartStore.sync();