0
私は、ストアからデータを取得するピッカーに「空の」値を挿入する方法を探しています。値は、ストアから返される他の値の前に追加する必要があります。Sencha Touchのピッカーに値を挿入する方法は?
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;
}
});
しかし、値は常にピッカーデータの最後に表示されます。おそらく、いくつかのピッカーメソッドをオーバーライドすることで、他の方法がありますか?
残念ながら、あなたの提案通りには機能しません。ストアにdata:プロパティを設定しただけでは、常に上書きされます。 setData関数をオーバーライドすることは、ピッカーによって呼び出されないため機能しません。ストアのロードメソッドを上書きしようとしましたが、ストアのgetData()メソッドから返されたデータコレクションに値を挿入できませんでした.. –
次にAjaxリクエストを使用してデータを取得し、setData関数を使用してロードしますデータ。この方法で最初に空のデータを追加してから他のデータを設定することができます。 – Swar
これはうまくいくかもしれませんが、そのような単純な作業は簡単にはできません。 –