【问题标题】:How to disable ag-grid sidebar options如何禁用 ag-grid 侧边栏选项
【发布时间】:2021-06-02 11:17:29
【问题描述】:

我正在使用 Ag-grid 侧边栏并希望将所有列显示为选中或取消选中的选项,但有些是只读的。我没有任何数据组。 我一直在查看文档,它说我需要将 functionsReadOnly 设置为 tru 但这不起作用

似乎我必须设置pivotMode:true,但这样做会使网格上的所有列都消失 我希望我的所有列都显示,但只是将侧边栏中的一些选项禁用。 这是我的代码

config.js

 { columnDefs: [
    {
      headerName: 'ColA',
      field: 'colA',
    },
    {
      headerName: 'ColB',
      field: 'colB'
      enablePivot: true
    },
    {
      headerName: 'uploadedFiles.fileFormat',
      field: 'formatDescription'
    },
    {
      headerName: 'ColC',
      field: 'colC',
    }
    
  ],
  defaultColDef: {
    sortable: true,
    suppressMenu: false,
    resizable: true,
    suppressColumnsToolPanel: false
  },
  rowSelection: 'single',
  sideBar: {
    toolPanels: [
      {
        id: 'columns',
        labelDefault: 'Columns',
        toolPanel: 'agColumnsToolPanel',
        toolPanelParams: {
          suppressRowGroups: true,
          suppressValues: true,
          suppressPivots: true,
          suppressPivotMode: true,
          suppressSideButtons: true
        }
      }
    ],
    hiddenByDefault: true
  },
  pivotMode:true
}

我希望所有这些列都显示在网格上,并且所有选项都显示在侧边栏中...我只想禁用 colB 但启用枢轴模式会使所有列在网格上消失并且只使用 functionsReadOnly在 colB 上什么都不做

【问题讨论】:

    标签: reactjs ag-grid ag-grid-react


    【解决方案1】:

    您可以使用 toolPanelClass: 'some-class' 将自定义类应用到该特定列的工具面板,并使用 css pointer-event: none

    或者您可以使用 document.getElementByClassName('some-class') 并根据您的要求操作 DOM。

    https://www.ag-grid.com/documentation/javascript/tool-panel-columns/#example-styling

    【讨论】:

    • 这可行,但它不适用于切换选择所有功能。无论如何?
    • 嗯,一个简单的解决方法是使用suppressColumnSelectAll 删除select / unselect All
    • 是的,我需要这个功能,我只是希望它不要取消选择我用pointer-events:none添加类的那些
    • 好的,所以我设法解决了。创建一个包含所有复选框被禁用的colId/field 的数组。在您的网格中添加(columnVisible) 事件。使用setColumnVisible(colKey, visible) 设置可见性。在他们的文档中,这仅接受 2 个参数,但在 stackblitz 中它要求 3 个参数,所以我将其设置为空。 stackblitz.com/edit/…
    猜你喜欢
    • 2018-08-30
    • 2022-10-14
    • 2021-11-06
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2021-04-05
    • 2019-10-07
    • 2021-01-08
    相关资源
    最近更新 更多