如何使用渲染器函数中的记录作为编辑器 ExtJs Grid 中组合的存储
How to use record from renderer function as store for combo inside editor ExtJs Grid
我有一个带有单元格编辑插件的网格:
Ext.define('MyGrid', {
extend: 'Ext.grid.Panel',
title: 'MyGrid',
emptyText: __('no_data'),
plugins: {
ptype: 'cellediting',
clicksToEdit: 1
},
columns: [
{
text: 'Email',
dataIndex: 'email',
editor: {
xtype: 'combo',
queryMode: 'local'
},
renderer: function(value) {
// this I wont to use value as store combo
return value;
}
}
]
});
渲染器函数中的值是一个数组。如何在编辑器中将其用作组合存储?
我不确定列中的值是否是用户从组合框中选择的值。如果是这种情况,并且您从中选择的值对于所有列都是相同的,那么您可以为该组合框创建一个商店并绑定它。
我通过使用带有组合框的小部件列解决了我的问题。
{
xtype: 'widgetcolumn',
flex: 1,
text: 'Email',
editor: {},
widget: {
xtype: 'combo',
queryMode: 'local',
displayField: 'email',
valueField: 'email',
editable: false,
value: 0,
listeners: {
afterrender: 'afterComboEmailRender',
change: 'onComboEmailChange'
}
}
}
并且我在单元格记录呈现后动态地将存储设置为组合。
我有一个带有单元格编辑插件的网格:
Ext.define('MyGrid', {
extend: 'Ext.grid.Panel',
title: 'MyGrid',
emptyText: __('no_data'),
plugins: {
ptype: 'cellediting',
clicksToEdit: 1
},
columns: [
{
text: 'Email',
dataIndex: 'email',
editor: {
xtype: 'combo',
queryMode: 'local'
},
renderer: function(value) {
// this I wont to use value as store combo
return value;
}
}
]
});
渲染器函数中的值是一个数组。如何在编辑器中将其用作组合存储?
我不确定列中的值是否是用户从组合框中选择的值。如果是这种情况,并且您从中选择的值对于所有列都是相同的,那么您可以为该组合框创建一个商店并绑定它。
我通过使用带有组合框的小部件列解决了我的问题。
{
xtype: 'widgetcolumn',
flex: 1,
text: 'Email',
editor: {},
widget: {
xtype: 'combo',
queryMode: 'local',
displayField: 'email',
valueField: 'email',
editable: false,
value: 0,
listeners: {
afterrender: 'afterComboEmailRender',
change: 'onComboEmailChange'
}
}
}
并且我在单元格记录呈现后动态地将存储设置为组合。