在 ExtJS 中的视图之间传递数据
Pass data between views in ExtJS
我正在从商店读取数据并填充主 girdView。单击任何一行时,会出现 windows,我想用单击的相同记录填充该 window 中的字段集。
谁能告诉我该怎么做?
我的弹出窗口 window 是这样的:
{
extend: 'Ext.window.Window',
height: 500,
width: 1500,
minWidth :1500,
maxWidth :1500,
layout: 'fit',
controller: 'PopUpWindowController',
initComponent: function () {
var me = this;
//console.log(me.myExtraParams);
var Store = Ext.getStore('mainStore');
Ext.applyIf(me, {
/* items: [{
xtype: 'form',
bodyPadding: 10,
region: 'center'
}]*/
});
me.callParent(arguments);
},
items: [
{
xtype: 'panel',
title : 'Projektierung',
bodyStyle : 'padding:5px',
width : 1880,
autoHeight : true,
items:
[
{
xtype : 'kopfdatenView', // Have to populate this view
}
]
}]}
在主视图中,我将其称为:
{
区域:'center',
xtype: 'gridpanel',
listeners : {
itemdblclick: function(dv, record, item, index, e) {
var extra = record.data;
win = Ext.create('App.view.PopUpWindow');
console.log(win.myExtraParams);
win.on('show', function(win) {
win.setTitle(record.get('ID'));
});
win.show();
}
},
columns: [
****
],
store: 'mainStore',
height: 100,
width: 400,
}
我想在 kopfdatenView 中填充字段集。请帮助
你可以这样做:
win = Ext.create('App.view.PopUpWindow', {
params: record
});
然后,在您的 PopUpWindow 控制器中,您可以在渲染事件中检索 'params'(例如)。
您在创建时直接将您的记录传递给您的 window:
win = Ext.create('App.view.PopUpWindow', {
myRecord: record
});
然后在 window 的 initComponent
函数中(在 callParent
之前):
this.title = this.myRecord.get('ID');
我正在从商店读取数据并填充主 girdView。单击任何一行时,会出现 windows,我想用单击的相同记录填充该 window 中的字段集。 谁能告诉我该怎么做?
我的弹出窗口 window 是这样的:
{
extend: 'Ext.window.Window',
height: 500,
width: 1500,
minWidth :1500,
maxWidth :1500,
layout: 'fit',
controller: 'PopUpWindowController',
initComponent: function () {
var me = this;
//console.log(me.myExtraParams);
var Store = Ext.getStore('mainStore');
Ext.applyIf(me, {
/* items: [{
xtype: 'form',
bodyPadding: 10,
region: 'center'
}]*/
});
me.callParent(arguments);
},
items: [
{
xtype: 'panel',
title : 'Projektierung',
bodyStyle : 'padding:5px',
width : 1880,
autoHeight : true,
items:
[
{
xtype : 'kopfdatenView', // Have to populate this view
}
]
}]}
在主视图中,我将其称为:
{ 区域:'center', xtype: 'gridpanel',
listeners : {
itemdblclick: function(dv, record, item, index, e) {
var extra = record.data;
win = Ext.create('App.view.PopUpWindow');
console.log(win.myExtraParams);
win.on('show', function(win) {
win.setTitle(record.get('ID'));
});
win.show();
}
},
columns: [
****
],
store: 'mainStore',
height: 100,
width: 400,
}
我想在 kopfdatenView 中填充字段集。请帮助
你可以这样做:
win = Ext.create('App.view.PopUpWindow', {
params: record
});
然后,在您的 PopUpWindow 控制器中,您可以在渲染事件中检索 'params'(例如)。
您在创建时直接将您的记录传递给您的 window:
win = Ext.create('App.view.PopUpWindow', {
myRecord: record
});
然后在 window 的 initComponent
函数中(在 callParent
之前):
this.title = this.myRecord.get('ID');