Sencha touch 2 sencha touch将数据插入本地存储

Sencha touch 2 sencha touch将数据插入本地存储,sencha-touch-2,sencha-architect,Sencha Touch 2,Sencha Architect,嗨,我在sencha中找到了很多关于从db加载数据的例子。 我尝试制作一个包含注释的列表,在第二步中,我希望能够将注释添加(保存)到我的数据库中。我在本地存储上尝试过 目前,我从Arraystore中的数组加载数据。 我应该在哪里设置我的代理?(店内还是模型中?) 如何在存储中插入数据? 我在目前的arraystore上尝试过类似的方法,但没有成功: (这是按代码运行的代码): 浏览器控制台收到一个错误: 未捕获引用错误:未定义MyArrayStore 我可以举一个我的商店的例子吗 我的模型是:

嗨,我在sencha中找到了很多关于从db加载数据的例子。 我尝试制作一个包含注释的列表,在第二步中,我希望能够将注释添加(保存)到我的数据库中。我在本地存储上尝试过

目前,我从Arraystore中的数组加载数据。 我应该在哪里设置我的代理?(店内还是模型中?)

如何在存储中插入数据? 我在目前的arraystore上尝试过类似的方法,但没有成功: (这是按代码运行的代码):

浏览器控制台收到一个错误: 未捕获引用错误:未定义MyArrayStore 我可以举一个我的商店的例子吗

我的模型是:
谢谢你的回答。我在建筑师身上试过。 我的模型是:

Ext.define('MyApp.model.NoteModel', {
    extend: 'Ext.data.Model',
    alias: 'model.NoteModel',
    config: {
        fields: [
            {
                name: 'id',
                type: 'int'
            },
            {
                name: 'date',
                type: 'date'
            },
            {
                name: 'title',
                type: 'string'
            },
            {
                name: 'narrative',
                type: 'string'
            }
        ],
        proxy: {
            type: 'localstorage',
            id: 'local'
        }
    }
});
我的商店是:

Ext.define('MyApp.store.MyArrayStore', {
    extend: 'Ext.data.Store',
    requires: [
        'MyApp.model.NoteModel'
    ],

    config: {
        data: [
            {
                title: 'Note 1',
                narrative: 'test1 1'
            },
            {
                title: 'Note 2',
                narrative: 'narrative 2'
            },
            {
                title: '3 ertyyh',
                narrative: 'narrative 3'
            },
            {
                title: '4 asdf',
                narrative: 'narrative 4'
            },
            {
                title: 'Note 5',
                narrative: 'narrative 5'
            },
            {
                title: 'weadf',
                narrative: 'narrative 6'
            }
        ],
        model: 'MyApp.model.NoteModel',
        storeId: 'MyArrayStore'
    }
});

您应该在模型或商店中设置代理。 下面是如何在您的模型中实现这一点

Ext.define('MyModel', {

extend: 'Ext.data.Model',

config: {
    fields: ['field1'],
    proxy: {
        type: 'localstorage',
        id  : 'my-model-localstorage-id'
    }
});
同样的事情也可以在你的商店里做

之后,考虑到“MyArrayStore”是这样一个存储的实例,您建议的代码应该可以正常工作


希望这有帮助。

您应该在模型或商店中设置代理。 下面是如何在您的模型中实现这一点

Ext.define('MyModel', {

extend: 'Ext.data.Model',

config: {
    fields: ['field1'],
    proxy: {
        type: 'localstorage',
        id  : 'my-model-localstorage-id'
    }
});
同样的事情也可以在你的商店里做

之后,考虑到“MyArrayStore”是这样一个存储的实例,您建议的代码应该可以正常工作


希望这有帮助。

如果您想访问您的商店(您在问题中更新的商店),那么您可以使用:

Ext.StoreManager.get('MyArrayStore')
因此,例如,您想要执行的操作可以通过以下方式完成:

var store=Ext.StoreManager.get('MyArrayStore');
store.add({title:"newnote",narrative:"bla bla bla",date:now,id:noteid});
store.sync();

如果您想访问您的商店(您在问题中更新的商店),则可以使用:

Ext.StoreManager.get('MyArrayStore')
因此,例如,您想要执行的操作可以通过以下方式完成:

var store=Ext.StoreManager.get('MyArrayStore');
store.add({title:"newnote",narrative:"bla bla bla",date:now,id:noteid});
store.sync();

我尝试了类似的东西,但仍然.add不起作用。我也在json文件上尝试了。我仍然可以加载数据,但是如何使用jsonWriter在我的json文件上写入数据?我尝试了类似的操作,但仍然不起作用。add不起作用我也在json文件上尝试。我仍然可以加载数据,但如何使用jsonWriter在json文件中写入数据?答案是thanx。我在建筑师身上试过。我将通过插入模型和存储来更新我的问题。我必须创建存储的实例吗?我的listview已经加载了存储区的数据,因此我假设存储区已经创建。我错了吗?答案是thanx。我在建筑师身上试过。我将通过插入模型和存储来更新我的问题。我必须创建存储的实例吗?我的listview已经加载了存储区的数据,因此我假设存储区已经创建。我错了吗?thanx成功了!所以我必须通过店长进入我的店铺?是的。至少,我是这样做的,我不知道还有其他方法可以进入你的商店。谢谢!所以我必须通过店长进入我的店铺?是的。至少,我是这样做的,我不知道有其他方式进入你们的商店。