如何从ag-grid列菜单中删除第一个菜单

时间:2016-11-26 18:07:26

标签: ag-grid

是否可以从ag-grid列菜单中删除第一个菜单? 我的意思是带有' pinSubMenu',' valueAggSubMenu',' autoSizeThis'等的菜单。

我想打开上下文菜单,首先查看过滤器菜单,然后查看列可见性菜单。

我尝试这样做,但它仍会打开空菜单,我需要导航到我的过滤器菜单:

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;
}

2 个答案:

答案 0 :(得分:2)

看起来你应该能够在gridOptions中完成你想要做的事情:

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

您还可以取消列菜单的任何面板:

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

这假设您使用的是Enterprise版本,我认为您的版本基于您对getMainMenuItems函数的使用

答案 1 :(得分:1)

您需要在menuTabs对象中指定colDef

{
    headerName: "ID",
    field: "id",
    menuTabs: ['filterMenuTab','generalMenuTab','columnsMenuTab']
}

查看更多详情here