Как получить данные Ext.data.JsonStore в sencha - PullRequest
0 голосов
/ 05 ноября 2011

У меня есть следующий код -

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' }
                  ]
        });

Теперь, как я могу получить данные опции ???

Ответы [ 2 ]

0 голосов
/ 18 ноября 2011

Я предлагаю вам поместить ваши данные, возможно, в файл 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;
    }
});
0 голосов
/ 05 ноября 2011

Во-первых, JsonStore на самом деле не класс для использования.Он является внутренним для Сенчи и может быть удален в любое время.Вместо этого следует использовать Ext.data.Store.

Во-вторых, многие из готовых компонентов в Sencha получают хранилище в качестве параметров конфигурации, поэтому вам не нужно беспокоиться о внутренней работе.

Наконец, если вам нужен доступ к данным магазина, вы можете сделать это, используя методы each, getAt или find, в зависимости от ваших потребностей и способа доступа к вашим данным (произвольный доступ)., последовательный или поиск).

Я предлагаю вам просмотреть эту документацию: Документация Sencha 1.1

...