ExtJS 4 API - Ext.ux.grid.filter.ListFilterView source...で説明されているように、(ハードコードされたリストではなく) データ ストアを使用して Ext.ux.grid.filter.ListFilter を実装しようとしています。この列ヘッダーにフィルター オプションが表示されますが、ストアからオプションを読み込む方法を知りたいですか?? 以下のコードで試してみましたが、うまくいきません。オプションがハードコードされている場合、フィルターは正常に機能します。
ここにいくつかのコードがあります:
var tradeStore = new Ext.data.JsonStore({
fields: ['tradegroup_id','tradegroup_name'],
data: [
{ tradegroup_id: 1, tradegroup_name: '10 T-shirts' },
{ tradegroup_id: 2, tradegroup_name: '15 polo' },
{ tradegroup_id: 3, tradegroup_name: '60 Pants' },
{ tradegroup_id: 4, tradegroup_name: '62 Denim' }
],
autoLoad: {
// this callback function is actually Ext js 4, how to convert it to Ext js 3?
callback: function() {
grid.getView().getHeaderCt().child('#Trademark').initialConfig.filter.options = tradeStore.collect('tradegroup_name');
}
}
});
_filtersPlugin = new Ext.ux.grid.GridFilters({
encode: encode, // json encode the filter query
local: local, // defaults to false (remote filtering)
filters: [
{
type: 'list',
dataIndex: 'Trademark',
options: []
// options: ['10 T-shirts', '60 Pants'] // this is harcoded, I don't want this
store: tradeStore
},
]