typescript - 如何在 Typescript 中将属性附加到泛型类型?
问题描述
我正在尝试将其他属性添加到泛型类型中。这是我所拥有的:
type RequestData<T> = {
name: string,
data: {
[K in keyof T]: T[K],
isActive: boolean // Typescript is not happy with this
}
}
基本上,我的意图是将属性isActive
作为属性之一添加到T
. 但是 Typescript 抱怨我的所作所为。
我希望我的最终用法是这样的:
type TestData = { item: any[] };
const myFunc = <T>() => {
const myData: RequestData<T> = {
name: 'test',
data: {
item: ['a', 'b', 'c'],
isActive: true,
},
};
}
如何将其他属性附加到泛型类型?
解决方案
我不确定这是否是最好的方法,但它有效
type RequestData<T> = {
name: string;
data: {
[K in keyof T]: T[K];
} & {
isActive: boolean;
};
};
推荐阅读
- javascript - 如何在 React Select 库中删除 Select 上的文本光标?
- python - 在heroku上部署我的flask python应用程序时如何解决应用程序错误?
- reactjs - 在 useState 挂钩中存储数据
- react-native - 样式化图标以适应文本输入
- amazon-web-services - 如何从 AWS 中的 MySQL 数据库调用 Lambda 函数,如何将参数从 Lambda 函数传递到 ECS 中的容器?
- microsoft-graph-api - Office 365 MS Exchange - 为所有日历设置代理
- ruby-on-rails - rails 从 2 个带有编码的表中获取数据
- php - 显示表格数据
- mips - 在 MIPS 中使用 multu
- jquery - 如何在不使用 beforeShowDay 的情况下突出显示 jquery datepicker 中的某些日期?