如何在sencha中检索Ext.data.JsonStore数据

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了如何在sencha中检索Ext.data.JsonStore数据相关的知识,希望对你有一定的参考价值。

我有以下代码 -

var options = new Ext.data.JsonStore({
            model: 'options_model',
            data: [
                { id: 1, option1: 'Alope', status1: 'true',option2: 'Option2', status2: 'false',option3: 'Option3', status: 'false',option4: 'Option4', status4: 'false' }
                  ]
        });

现在如何检索选项数据???

答案

我建议你把你的数据放到filename.json文件中(这是为了保持代码的可伸缩性和完整性)。

无论如何,无论您在何处存储数据,这都是您需要的代码:

Ext.Ajax.request({
    url: 'path_to_ur_json_file_wrt_html_file/filename.json',    //in my case it was data/xyz.json  since my folder layout was : abc.html, app, data, lib, stylesheets; and my data.json was in the data folder :)
    timeout:3000,      //how long it shud try to retrieve data in ms
    method:'GET',
    success: function(xhr) {
        jsonData = Ext.util.JSON.decode(xhr.responseText);
        var data4u = jsonData.data[0].option1;
    }
});
另一答案

首先,JsonStore并不是真正的类。它是Sencha的内部,可能随时被删除。你应该使用Ext.data.Store代替。

其次,Sencha中的许多开箱即用的组件都会将商店作为配置选项,因此您不必担心内部工作。

最后,如果您确实需要访问商店的数据,可以使用eachgetAtfind方法,具体取决于您的需求和您希望访问数据的方式(随机访问,顺序或搜索)。

我建议你回顾一下这个文档:Sencha 1.1 Documentation

以上是关于如何在sencha中检索Ext.data.JsonStore数据的主要内容,如果未能解决你的问题,请参考以下文章

如何在 sencha touch 或架构师中获取设备语言

如何从 Sencha extjs 获取存储价值

sencha touch 2.2.1 检查控制器中的商店是不是为空?

Sencha Touch 存储同步

如何在 sencha 中调用 Web 服务并解析 json?

ExtJS 4.1 - 检索嵌套 JSON 的 hasOne 信息