我正在尝试为反应表创建一个新的复选框列。我不需要标题名称复选框列。如果我在标题中输入一个空字符串,则我的应用程序将崩溃,并在下面显示错误消息
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',
}
]
)
如何使用空白标题执行此操作?
注释中提供的答案是技术上正确的,但也很容易破解。有一种非解决方法可以做到这一点:只需为列提供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
的次要错字。它将让您执行此操作,但是如果您自己传递一个,甚至是空的,则失败的可能性也较小。)