У меня есть простое тестовое приложение, в котором у меня есть карусель, который будет создавать несколько объектов одного и того же типа сетки, причем каждая сетка имеет свою собственную копию магазина.ST2: Использование 2 уникальных экземпляров магазина и MVC
Карусель:
Ext.define('App.view.TopPageCarousel', {
extend: 'Ext.Carousel',
xtype : 'app-toppagecarousel',
requires: ['Ext.Carousel', 'App.view.TopPageGrid'],
config: {
title: 'Top Pages',
items: [{
xtype : 'app-toppagegrid',
title : 'titleA'
},{
xtype : 'app-toppagegrid',
title : 'titleB'
}]
}
});
Сначала я определял хранилище в сетке как свойство в его конфиге, и у меня есть контроллер, который прослушивает изменения в магазине, просто чтобы сообщить, что он загружается. Выполняется вызов ajax и заполняется сетка. Однако все сетки были заполнены теми же данными, хотя при каждом вызове возвращались уникальные данные.
Тогда я нашел пост, который сказал, что мне нужно, чтобы создать экземпляр магазины, как сетка заселяется, например, так:
constructor : function() {
var me = this;
Ext.apply(me, {
store : me.buildStore()
});
me.callParent(arguments);
me.store.load({params : {ufq : this.title}});
},
buildStore : function() {
return Ext.create('App.store.Links');
}
Этот вид работ. Выполняется вызов ajax, но сетка сейчас не заполняется, и я не вижу console.log («Store loaded»); выполняемый, который я разместил в контроллере. Что я делаю не так?