如何解决根据输入返回任何对象键类型或对象类型本身的通用 Typescript 方法
我想定义一个打字稿方法,其中方法可以返回对象类型或对象的任何属性。 例如
Person {
Education,Bio
}
泛型函数可以根据提供的输入返回 Person
或 Education
或 Bio
,例如 Enum 类型。
let person = testFunction(TypePerson); // complete person
let personEducation = testFunction(TypeEducation); // person's education
Person 类型只是一个例子,但这里可以是任何东西,并且属性不会提前知道。
e.g 而不是 Person 让我们说得到
Vehicle {
PropertyType1,SomeProperties
}
解决方法
我想你是在问函数重载。
interface Person {
Education: string;
Age: number;
}
interface Vehicle {
doors: number;
color: 'pink' | 'red';
}
enum Data {
person = 'person',car = 'car'
}
function getData(data: Data.car): Vehicle
function getData(data: Data.person): Person
function getData(data: Data) {
return 'your implementation' as any
}
const result1 = getData(Data.person) //Person
const result2 = getData(Data.car) //Vehicle
Here 你可以找到更多信息
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。