2016-05-18 2 views
2

Я пишу обобщенный класс, который получен из сетки ExtJS, и я должен проверить, что функция во время создания панели инструментов используется (grouping), я хочу автоматически добавлять две кнопки для свернуть/развернуть все группы).Get Grid Feature by ftype, а не id

var groupingFeature = me.getView().getFeature("grouping") 
if(groupingFeature && me.store.grouper) { 
    me.toolbar.insert(0,[{ 
     iconCls:'icon-plus', 
     handler:function() { 
      groupingFeature.expandAll(); 
     } 
    },{ 
     iconCls:'icon-minus', 
     handler:function() { 
      groupingFeature.collapseAll(); 
     } 
    }]); 
} 

Но функция группировка не выбрана, потому что getFeature работает только с ID (и я не могу рассчитывать, что специальный идентификатор добавляется к каждой группировке функции).

Есть ли способ получить эту функцию по ftype?

ответ

3

Вы можете осуществлять поиск по ftype в цикле по массиву функций или использовать метод частногоfindFeature из Ext.grid.View, который делает это. По ExtJS documentation:

находит функцию с помощью FTYPE в массиве функций

Таким образом, используя эту функцию, вы должны получить необходимую информацию.

var view = me.getView(); 
var groupingFeature = view.findFeature("grouping"); 
Смежные вопросы