我在react打字机里工作。我创建了一个像这样的通用函数-
interface IUpdatedRows {
rowsPerPage: number;
// this is where the confusion is -
rows: {
id: number;
name: string;
description: string;
role: string;
manager: string;
total_tasks: number;
annotator: number;
qc: number; }[];
//
page: number;
}
export const updatedRows = (args: IUpdatedRows) => (args.rowsPerPage > 0
? args.rows.slice(args.page * args.rowsPerPage, args.page * args.rowsPerPage + args.rowsPerPage)
: args.rows
);
在这里,我将使用updatedRows函数从单独的组件有不同的行集。上述情况下工作良好,只有一个组件的行完全具有我上面提到的类型,即。
row: {
id: number;
name: string;
description: string;
role: string;
manager: string;
total_tasks: number;
annotator: number;
qc: number; }[];
在不同的组件行中包含以下字段-
row: {
id: number;
name: string;
code: string;
type: string;
added_by: string;
added_on: string;
};
我不知道如何在row
的实用程序文件中给予一个通用类型,它将适用于所有组件。任何帮助,指针是非常感谢的。
1条答案
按热度按时间gfttwv5a1#
假设
IUpdatedRows
接口本身和相关函数updatedRows
不需要知道关于行类型的任何信息(除了应该是数组的事实),它们应该用于不同类型的行-您可以使用Generics。连接到Playground:链接