Создание экземпляра магазина в Extjs 2.3.0

У меня есть поле со списком, и я хочу создать новый экземпляр магазина этого комбо. Я вижу, что экземпляр магазина может быть создан Ext.create('My.Store')но это не доступно в Extjs 2.3.0

Я старался

var comb= new this.combobox1.store; // Gives error store is not a constructor

а также

var comb= new this.combobox1.getStore(); // com is undefined here

Любые иды.

1 ответ

Я знаю, что это год с опозданием, но лучше поздно, чем никогда, так как я столкнулся с этим без ответа, попробуйте это:

Сначала создайте свой магазин:

 var myComboStore = Ext.create('Ext.data.Store', {
     storeId:'myComboStore',
     fields: ['name', 'value'], 
     data: [
         {'name':'shelf1', 'value':'shelf1 val'}, 
         {'name':'shelf2', 'value':'shelf2 val'}, 
         {'name':'shelf3', 'value':'shelf3 val'}, 
         {'name':'shelf4', 'value':'shelf4 val'}  
     ] 
 });

Затем в своем комбо-конфиге назначьте магазин. Эта панель (fp) является простой формой для хранения примера комбо.

var fp = {
  xtype      : 'form',
  frame      : true,
  labelWidth : 110,
    items: 
     {
         xtype: 'combobox',
         fieldLabel: 'My Combo',
         displayField: 'name',
         width: 320,
         store: myComboStore, // ASSIGN STORE TO COMBO
         queryMode: 'local',
         typeAhead: true,
         emptyText : '-none-',
         listeners : {
          //click events for item selection goes here
        }
    }

}

создайте окно для панели, чтобы войти в

  new Ext.Window({
      title   : '',
      layout  : 'fit',
      height  : 180,
      width   : 320,
      border   : false,
      items   : fp
  }).show();

Рабочая скрипка: https://fiddle.sencha.com/

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