在react table v7上,我有一个表,其中每一行都是一个嵌套对象。在使用TypeScript时,对于不是直接在基本行对象上的属性,我会遇到一些问题,使列定义数组正常工作。
如下面的示例所示,对于具有嵌套属性(batteryModel.capacity)的列中的单元格格式化程序参数,我得到了一个错误。此错误是因为无法自动推断单元格格式化程序的参数类型。但是,这对于"externalId“很好,因为这是行对象上的一个直接字符串属性。

我能够通过手动定义单元格格式化参数的类型来解决这个问题,但我不认为这是一个很好的解决方案,因为将来如果某些列数据类型发生变化,它可能会出现but:

如果这是我必须忍受的弱点,那么也许最好将行预处理成一个新的对象,使结构变平,但这似乎是不必要的复杂性。react表中支持嵌套的行数据,但是如果它使lib无法检测TypeScript中列的数据类型,我会说它几乎不可用。因此,我希望有一种很好的方法来确保即使在嵌套对象上也能正确地检测到数据类型。
发布于 2022-06-14 14:04:49
将整个对象定义为Column[]。就像const columnDef: Column[] = {...}。
https://stackoverflow.com/questions/70301851
复制相似问题