【问题标题】:how to remove first menu from ag-grid column menu如何从 ag-grid 列菜单中删除第一个菜单
【发布时间】:2018-04-24 23:07:17
【问题描述】:

是否有从 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;
}

【问题讨论】:

    标签: ag-grid


    【解决方案1】:

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

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

    您还可以隐藏列菜单的任何面板:

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

    这是假设您使用的是企业版,我假设您使用的是 getMainMenuItems 函数

    【讨论】:

    • 是要放在defs列中的。通过放入 col defs - 不工作,过滤参数 - 不工作。
    • @VISHALDAGA 不......它应该放在你的 gridOptions 下......如答案所示
    • 此答案同时已被弃用 - 到目前为止,您必须在每个列定义中定义菜单:menuTabs:['generalMenuTab','gibberishMenuTab'](请参阅此处的文档:ag-grid.com/javascript-grid-column-menu/…
    • 如何完全删除该菜单?
    • @DominicTobias 设置suppressMenu: true
    【解决方案2】:

    你需要在colDef对象中指定menuTabs

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

    查看更多详情here

    【讨论】:

      猜你喜欢
      • 2018-07-03
      • 2018-10-30
      • 2019-08-30
      • 2019-11-06
      • 1970-01-01
      • 1970-01-01
      • 2013-04-23
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多