Sencha Touch将个人记录添加到商店

时间:2014-05-16 19:52:55

标签: javascript jquery arrays extjs sencha-touch

我一直在打这个。看起来如此微不足道,却无法实现。 我只想创建一个商店,然后根据UI操作慢慢填充记录。 (按一个按钮>将数据添加到商店,按下下一个按钮>将该数据添加到商店等...)

每当我尝试添加新记录时(在添加第一个记录之后),之前的记录就会被删除,而我的商店一直只有1条记录。

如何将新记录添加到商店(在不同时间,不断添加新的单独记录)?

preparePost: function(data){

    //data is an object that comes from a button config...

    var mod = Ext.define('App.model.PostAttendanceModel', {
        extend: 'Ext.data.Model',
        config: {
            identifier: {
                type: 'uuid'
            },
            fields:[
                'items'
            ]
        }
    });

    var createStore = Ext.create('Ext.data.Store', {
        model: mod,
        storeId:'PostAttendanceStore'
    });

    var getStore = Ext.getStore('PostAttendanceStore');

    var store = typeof createStore != "undefined" ? getStore : createStore;

    var items = {
            attendancereasonid: data.attendancereasonid,
            level: data.level,
            personid: data.personid
    };

    store.add(items);

    console.info(store);

    //it is always the last record added, without "previous" records!
}

1 个答案:

答案 0 :(得分:0)

无论出于何种原因,当我创建模型并即时存储时,它并不喜欢。因此,我创建了适当的模型并存储文件,将它们放在适当的MVC结构中 - 现在是

 store.add(items)

方法有效。