Как отобразить данные из магазина в Ext.Component ExtJS

У меня есть магазин, который возвращает данные с сервера:

Ext.define('Admin.store.dashboard.NPS', {
extend: 'Ext.data.Store',
alias: 'store.nps',

autoLoad : false,
proxy    : {
    type: 'api',
    url : SITE_URL + '/api/surveys/nps'
},
fields   : [
    {
        type: 'float',
        name: 'nps'
    }
]    
});

И я хочу отобразить эти данные в TPL Ext.Component:

Ext.define('Admin.view.dashboard.NPSPercent', {
extend: 'Ext.Component',
xtype: 'nps-percent',
bind: {
    data: {
        nps_percent: '{nps}'
    }
},

tpl: new Ext.XTemplate('<div class="percent">+{nps_percent.nps}</div>')
});

Я пытался привязать данные к загруженному хранилищу, но это не помогло.

1 ответ

Решение

Шаблоны в компонентах ожидают обычные вещи, такие как массивы, а не магазины. Чтобы отобразить шаблон, используя хранилище в качестве источника данных, используйте класс Ext.view.View вместо просто компонента.

Другие вопросы по тегам