在React-Data-Grid
仓库中,我看到了
export interface DataGridProps {
columns: ColumnList;
(...)
rowRenderer?: React.ReactElement | React.ComponentType;
rowGroupRenderer?: React.ComponentType;
(...)
和
export default class ReactDataGrid extends React.Component<DataGridProps, DataGridState> { ... }
因此,在ReactDataGrid
的定义中,我们看到了rowGroupRenderer
道具的存在。
但是,该道具在软件包@types/react-data-grid
中不可用。那里有一个名为GridProps
的类型,但没有DataGridProps
的类型。另外,此GridProps
与GridProps
存储库中Grid.tsx
文件中导出的React-Data-Grid
不对应。
@ types / data-grid-types中的类型如何更新?如何与项目保持同步?
答案 0 :(得分:0)
在这种特定情况下,您无需使用@types
包,因为react-data-grid
本身就是written in TypeScript,并且将其类型发布为npm软件包(您可以从types
setting in its package.json看出)。因此,您应该能够删除@types/react-data-grid
依赖性,并且实类型将自动从包本身中获取。
通常,@types
程序包托管在DefinitelyTyped repo中(@types/react-data-grid
是here)。更新这些类型的软件包是一个手动过程,如果作者/维护者不关心TypeScript支持,则有时由软件包的用户来驱动。因此,如果您发现问题并有时间contribute a fix,那就太好了!
(关于react-data-grid
为何有@types
包的原因,即使它导出自己的类型,我猜也是“历史原因”,也许它最初是用JS编写并转换为TS在某个时候。)