在React表中删除标题名称并使其为空

问题描述 投票:0回答:1

我正在尝试为反应表创建一个新的复选框列。我不需要标题名称复选框列。如果我在标题中输入一个空字符串,则我的应用程序将崩溃,并在下面显示错误消息

    const columns = React.useMemo(
        () => [
          {
             //id: 'checkbox',
            Header: '',
            accessor: '',
            width: 25,
            Cell: ({ row }: any) => {
              return <input type='checkbox' className={classes.mystyle} />
            },
          },
          {
            Header: 'Jungle Name',
            accessor: 'JungleMan',
          }
        ]
    )

如何使用空白标题执行此操作?

enter image description here

reactjs react-table
1个回答
0
投票

注释中提供的答案是技术上正确的,但也很容易破解。有一种非解决方法可以做到这一点:只需为列提供id键。 id的用法在useTable hook docs中进行了描述:

从技术上讲,如果您具有列的唯一ID,则不需要[访问器]。

诸如“复选框”之类的名称将不会显示,因为必须为unique。因此,它可能应该更具描述性。此外,Header明确地是Optional属性-您可以完全忽略它,而不会造成损害。

因此,您的专栏可能看起来像:

   const columns = React.useMemo(
        () => [
          {
            id: 'checkbox-table-column'
            width: 25,
            Cell: ({ row }: any) => {
              return <input type='checkbox' className={classes.mystyle} />
            },
          },
          {
            Header: 'Jungle Name',
            accessor: 'JungleMan',
          }
        ],
      []
    );

((还修正了未将依赖项数组传递给useMemo的次要错字。它将让您执行此操作,但是如果您自己传递一个,甚至是空的,则失败的可能性也较小。)

© www.soinside.com 2019 - 2024. All rights reserved.