2014-09-26 26 views
2

我有一个动态生成ExtJS的5加过滤器,电网动态重新配置上

我建柱阵列和存储,然后调用我的网

下一页创建过滤器阵列重新配置的网格。现在过滤器必须应用到我的网格中的列。

但过滤器没有反映在我的网格中。如何才能实现?

myView.js

Ext.define('myView.view.myView', { 
    extend: 'Ext.grid.Panel', 
    plugins: 'gridfilters', 
    store: 'myStore.store.myStore', 
    pageSize:10, 
    dockedItems: [{ 
     xtype: 'pagingtoolbar', 
     store: 'WhiskerPlot.store.settingStore', // same store GridPanel is using 
     dock: 'bottom', 
     displayInfo: true 
    }], 
    filters :[] 
}); 

myController.js

var colFilters = []; 
colFilters.push({ 
        type : 'list', 
        dataIndex : dummyDataIndex, 
        options : [small,large] 
       });  

var filters = { 
        ftype : 'filters', 
        filters : colFilters 
      }; 
var gridview = Ext.ComponentQuery.query('myView')[0]; 
gridview.reconfigure(store,columnarr); 
gridview.filters.addFilters(filters); 

回答

-1

添加过滤器到列数组本身。 Filters Doc

var grid = Ext.create('Ext.grid.Panel', { 
    store: { 
     url: 'path/to/data' 
    }, 

    plugins: 'gridfilters', 

    columns: [{ 
     dataIndex: 'id', 
     text: 'Id', 

     filter: 'number' 
    }, { 
     dataIndex: 'name' 
     text: 'Name', 

     filter: { 
      type: 'string', 
      value: 'Ben' 
     } 
    }, { 
     ... 
    }] 
}); 

从复制