Показать сообщение отдельно
  #1 (permalink)  
Старый 08.11.2017, 20:11
Аватар для Sogl
Аспирант
Отправить личное сообщение для Sogl Посмотреть профиль Найти все сообщения от Sogl
 
Регистрация: 12.05.2016
Сообщений: 95

Ручная загрузка store
Всем привет!

Есть у меня рабочий Fiddle с ajax прокси, который я пытаюсь переделать на memory прокси. Пока как-то не шибко получается.

Вот основной код ручной загрузки данных Ajax-запросом в store:
// app/model/Employees.js file
Ext.define('Fiddle.model.Employees', {
    extend: 'Ext.data.Model',
    entityName: 'Employees',

    fields: [
        {
            name: 'profile_pic'
        },
        {
            type: 'int',
            name: 'age'
        },
        {
            type: 'string',
            name: 'last',
            mapping: 'name.last'
        },
        {
            type: 'string',
            name: 'first',
            mapping: 'name.first'

        },
        {
            type: 'string',
            name: 'email'
        }
    ],

    proxy: {
        type: 'memory',
        reader: {
            type: 'json',
            rootProperty: 'items',
            totalProperty: 'total',
            successProperty: ''
        }
    }
});

// app/store/Employees.js file
Ext.define('Fiddle.store.Employees', {
    extend: 'Ext.data.Store',
    pageSize: 30, // items per page
    alias: 'store.employees',
    model: 'Fiddle.model.Employees',
});

//app.js fule - launch() function
var store = Ext.create('Fiddle.store.Employees');
console.log(store);


Ext.Ajax.request({
    url: 'mates.json',
    success: function(resp) {
        var result = resp.responseText;
        console.log(result);
        // store.loadRawData(result);
        store.loadData(result);
        console.log(store);
        console.log(store.getAt(0));
    },
});


В итоге я получаю в своем store 3386 записей (посимвольно с json-файла) и вот так выглядит первая запись, которую вывожу в консоль:



Что я делаю не так?
И куда правильнее прописывать proxy — в store или в model? В некоторых примерах и в моем рабочем проекте в model, но в большинстве кода встречаемого мной прописывают в store.
Ответить с цитированием