我正在使用Extjs-6开发MVVM architecture应用程序。我有一个面板(panel_a
)。 panel_a
有两个小组(panel_1
,panel_2
)。 panel_1
有一个组件(component_1_1
)。 component_1_1
有一个事件(event_1
)。我想panel_2
听event_1
。
如何实施此问题?
请注意,我使用MVVM architecture。
答案 0 :(得分:0)
听取component_1_1活动是什么意思?你能写更多细节吗?什么必须做panel_2?
也许你想要这样的东西:
查看强>
Ext.define('MyApp.view.MyPanel', {
extend: 'Ext.panel.Panel',
alias: 'widget.mypanel',
requires: [
'MyApp.view.MyPanelViewModel',
'MyApp.view.MyPanelViewController',
'Ext.panel.Panel',
'Ext.form.field.TextArea'
],
controller: 'mypanel',
height: 454,
width: 891,
bodyPadding: 5,
title: 'panel_a',
layout: {
type: 'hbox',
align: 'stretch'
},
items: [
{
xtype: 'panel',
flex: 1,
bodyPadding: 10,
title: 'panel_1',
items: [
{
xtype: 'textfield',
fieldLabel: 'Component_1_1',
listeners: {
change: 'onTextfieldChange'
}
}
]
},
{
xtype: 'panel',
flex: 1,
reference: 'panel_2',
itemId: 'mypanel2',
margin: '0 0 0 5',
layout: 'fit',
bodyPadding: 20,
title: 'panel_2',
items: [
{
xtype: 'textareafield',
height: 138,
width: 359,
fieldLabel: ''
}
]
}
]
});
<强> CONTROLLER 强>
Ext.define('MyApp.view.MyPanelViewController', {
extend: 'Ext.app.ViewController',
alias: 'controller.mypanel',
onTextfieldChange: function(field, newValue, oldValue, eOpts) {
this.lookupReference("panel_2").down("textarea").setValue(newValue);
}
});