В Ext.window.Window я использую комбинированный список, который отображает записи в древовидной структуре:
Ext.define('BookApp.view.BookEdit', {
extend: 'Ext.window.Window',
alias: 'widget.bookwindowedit',
width : 450,
height : 450,
title: 'BookEdit',
layout: 'fit',
autoShow: true,
modal : true,
initComponent: function() {
this.items = [{
xtype: 'form',
items: [
{
xtype: 'combobox',
fieldLabel: 'Место хранения',
name: 'mesto_hraneniya',
value: '',
createPicker: function() {
var me = this;
var store = Ext.data.StoreManager.get('StorageStore');
var picker = new Ext.tree.Panel({
store: store,
pickerField: me,
rootVisible: false,
floating: true,
hidden: true,
listeners:
{
itemclick: function(view, record, item, index, e, eOpts)
{
var id = record.data.id;
var text = record.data.text;
me.setValue(text);
me.collapse();
}
}
});
me.mon(picker, {
afteritemexpand: me.alignPicker,
afteritemcollapse: me.alignPicker,
scope: me
});
return picker;
}
},
При первом щелчке все в порядке, открывается дерево для выбора значения, а при нажатии -установите значение в выпадающем списке.Проблема возникает, когда вы снова нажимаете на поле со списком, значения не отображаются и появляется консольная ошибка:
TypeError: me.getPicker (...). Обновление не является функцией
Как решить проблему?И где я могу узнать больше о методе createPicker?Документация очень мало написана.