У меня есть элементы для списка со списком, загружаемого из магазина, но что происходит, когда список элементов списка со списком должен отображаться, потому что пользователь нажал «развернуть», он должен «перезагрузить» данные из магазина прокси. Это заставляет список мигать и становится невыбранным, заставляя пользователя щелкнуть раскрывающийся список в другой раз.
Шаг 1 (при загрузке страницы):
Нажмите на ячейку, чтобы отредактировать ее:
Нажав на стрелку вниз в выпадающем списке. Опять же, этот ajax-вызов принудительно закрывает комбинированный список, заставляя пользователя повторно щелкнуть стрелку вниз.
View
Ext.define('AM.view.card.BacklogList', {
extend: 'Ext.grid.Panel',
alias: 'widget.backlogcardlist',
title: 'Backlog',
store: 'BacklogCards',
selType: 'cellmodel',
plugins: [
Ext.create('Ext.grid.plugin.CellEditing', {
clicksToEdit: 1
})
],
columns: [
{ header: 'ID', dataIndex: 'id' },
{ header: 'Name', dataIndex: 'name', field: 'textfield' },
{
header: 'Priority',
dataIndex: 'priority_id',
renderer: function(value){
if (value==3)
{
return "L";
}
else if (value==2)
{
return "M";
}
else
{
return "H";
}
},
width: 130,
field: {
xtype: 'combobox',
typeAhead: true,
store: 'Priorities',
displayField: 'name',
valueField: 'id',
listClass: 'x-combo-list-small'
}
}
]
});
Магазин:
Ext.define('AM.store.Priorities', {
extend: 'Ext.data.Store',
model: 'AM.model.Priority',
autoLoad: true,
proxy: {
type: 'ajax',
api: {
read: 'app/data/priorities.json',
update: 'app/data/updateUsers.json'
},
reader: {
type: 'json',
root: 'priorities',
successProperty: 'success'
}
}
});
priorities.json
{
success: true,
priorities: [
{
id : 1,
name : "High",
short_name : "H"
},
{
id : 2,
name : "Medium",
short_name : "M"
},
{
id : 3,
name : "Low",
short_name : "L"
}
]
}