Как отобразить данные из магазина в 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 вместо просто компонента.