我正在寻找一种方法来将一个“空”值插入一个从商店中检索数据的选择器。应在从商店返回的任何其他值之前添加该值。我试图像这样覆盖“getRange”方法:
Ext.define('UK.store.Locations', {
extend: 'Ext.data.Store',
requires: [
'Ext.data.proxy.JsonP'
],
config: {
model: 'UK.model.Location',
autoLoad: true,
proxy: {
type: 'jsonp',
limitParam: false,
startParam: false,
url: 'http://my.url.com/locations.php',
reader: {
type: 'json',
rootProperty: 'location'
}
}
},
getRange : function(startIndex, endIndex) {
var records = this.callParent(startIndex, endIndex);
var empty = Ext.create('UK.model.Location', 'All');
records.unshift(empty);
return records;
}
});
但该值始终显示在选取器数据的末尾。有没有其他方法可以做到,可能是通过覆盖一些选择器方法?
答案 0 :(得分:0)
使用数据存储的data
配置,并向数组添加一个空的“”记录。因此,这些数据将已添加到商店,下一组将附加到它。
您还可以使用商店的setData()
功能并添加一条额外的记录。然后加载商店而不是自动加载。