2016-11-26 154 views
0

是否有從ag-grid列菜單中刪除第一個菜單的選項? 我的意思是'pinSubMenu','valueAggSubMenu','autoSizeThis'等菜單。如何從ag-grid列菜單中刪除第一個菜單

我想打開上下文菜單並首先看到過濾器菜單,然後看到列可見性菜單。

我試圖做到這一點,但它仍然會打開空的菜單,我需要導航到我的過濾菜單:

function getMainMenuItems(params) { 
    var countryMenuItems = []; 
    var itemsToExclude = [ 
     'separator', 'pinSubMenu', 'valueAggSubMenu', 'autoSizeThis', 'autoSizeAll', 'rowGroup', 'rowUnGroup', 
     'resetColumns', 'expandAll', 'contractAll','toolPanel' 
    ]; 
    params.defaultItems.forEach(function(item) { 
     if (itemsToExclude.indexOf(item) < 0) { 
      countryMenuItems.push(item); 
     } 
    }); 
    return countryMenuItems; 
} 

回答

1

看起來你應該能夠完成你想要的gridOptions內做什麼:

gridOptions = { 
    ... 
    suppressMenuMainPanel: true, 
    ... 
} 

您還可以抑制任何列菜單面板:

gridOptions = { 
    ... 
    suppressMenuMainPanel: true, 
    suppressMenuColumnPanel: true, 
    suppressMenuFilterPanel: true, 
    ... 
} 

這是假設您正在使用的企業版本,我認爲你是基於你的使用getMainMenuItems函數

+0

是要放在列defs中。通過放置屏幕 - 不工作,過濾參數 - 不工作。 –

+0

@VISHALDAGA不......它被放在你的gridOptions下面......正如它在答案中顯示的那樣 –

+1

這個答案同時不推薦使用 - 現在你必須在每個列定義中定義菜單:'menuTabs:[ 'generalMenuTab','gibberishMenuTab']'(參見這裏的文檔:https://www.ag-grid.com/javascript-grid-column-menu/#gsc.tab=0&gsc.q=suppressMenuColumnPanel&gsc.sort=) – olsn