Я пишу свое приложение в структуре MVVM. У меня есть кнопки как элементы в GeoPortal.geox.components.MapToolbar. на мой взгляд (GeoPortal.view.map.Map) я использую эту панель инструментов, а кнопки панели инструментов имеют действия в моем диспетчере viewController (GeoPortal.view.map.MapController). Теперь эта панель инструментов должна быть плавающей, поэтому я помещаю ее в плавающее окно. Но для доступа к действиям с кнопками это окно должно быть элементом панели.ExtJs5 Как добавить плавающее окно к панели в качестве элемента?
Я пытался добавить элемент, как в приведенном ниже коде, но я получил эту ошибку:
TypeError: me.floatingItems is undefined
GeoPortal.view.map.Map:
Ext.define("GeoPortal.view.map.Map",{
"extend": "GeoPortal.geox.components.Panel",
"controller": "map",
"viewModel": {
"type": "map"
},
"uses": ['GeoPortal.geox.components.MapToolbar',
'GeoPortal.geox.components.MapInfobar',
'GeoPortal.geox.components.Window'
],
initComponent: function() {
var win = Ext.create({
xtype: 'gxWindow',
id: 'mapToolbarWindow',
items: [{
xtype: 'gxMapToolbar'
}]
});
// FIX this
this.add(win);
this.callParent();
},
listeners : {
afterrender: {
fn: function() {
Ext.getCmp('mapToolbarWindow').show();
}
}
},
"region": 'center',
"collapsible": false,
"collapsed": false,
"xtype": "mapPanel",
items: [{
xtype: 'gxMapInfobar'
}, {
html: '<div id="map" class="map"></div>'
}]
});
Спасибо заранее.