【问题标题】:mui-datatables can't disable selectableRowsmui-datatables 不能禁用 selectableRows
【发布时间】:2021-06-13 17:21:33
【问题描述】:

我用 mui-datatables 创建了一个表。一切正常,除了在选项中设置 selectableRows。它抛出以下错误:

类型 '{ selectableRows: boolean; }' 不可分配给类型 '部分 any) | 未定义)=>反应节点; ... 80 多个 ...; viewColumns:工具栏按钮; }>'。属性“selectableRows”的类型不兼容。 类型 'boolean' 不可分配给类型 'SelectableRows |不明确的'。 TS2322

 const columns = [
      {
           name: "id",
           label: "ID",
           options: {
                filter: true,
                sort: true,
           }
      },
      {
           name: "val",
           label: "val",
           options: {
                filter: true,
                sort: true,
           }
      },
      {
           name: "zip",
           label: "zip",
           options: {
                filter: true,
                sort: true,
           }
      }
 ];

 const options = {
      selectableRows: false
 };

 return (
      <div className={classes.root}>
           <MUIDataTable
           title={""}
           data={rows}
           columns={columns}
           options={options}
           />
      </div>
 );

【问题讨论】:

    标签: reactjs material-ui mui-datatable


    【解决方案1】:

    我相信你要找的是isRowSelectable

    这是文件的副本。

    isRowSelectable:使用自定义功能启用/禁用某些行的选择。如果未提供,则返回 truefunction(dataIndex: number, selectedRows: object(lookup: {dataindex: boolean}, data: arrayOfObjects: {index, dataIndex})) =&gt; boolean.

    所以从技术上讲,您需要将一个函数传递给此选项。在该函数中,您可以访问 dataIndex,selectedRows,data 作为参数并返回一个检查您自己标准的布尔值。

    所以理想情况下它应该是这样的:

      isRowSelectable: (dataIndex, selectedRows, data) => {
        return (
         dataArray[dataIndex].required === false
        )
      },

    【讨论】:

      【解决方案2】:

      我不知道这是否是最好的方法,但是将 selectableRowsHideCheckboxes 设置为 false 对我有用。

      【讨论】:

        猜你喜欢
        • 2020-03-23
        • 2023-01-22
        • 2022-10-19
        • 1970-01-01
        • 2021-10-28
        • 2020-09-26
        • 2021-01-06
        • 2020-07-11
        • 2021-04-01
        相关资源
        最近更新 更多