1 、interface
interface TypeD{
subTypeA: string;
subTypeB: number;
}
interface TypeProp{
typeA: string;
typeB: number;
typeC: boolean;
typeD: TypeD;
}
2 、data
const data1: TypeProp = {
typeA: 'yes',
typeB: 1,
typeC: true,
typeD: {
subTypeA: 'no',
subTypeB: 0,
}
}
3 、function
const dosomething = (data: keyof TypeProp):[?] => {
return data1[data]
}
请问 [?] 处我需要怎么处理(或者我需要如何定义 dosomething),才能表示返回的是 data1[data]的类型
我想要的
const b = dosomething('typeB') // b 是 number 类型
const c = dosomething('typeC') // c 是 boolean 类型
const d = dosomething('typeD') // d 是 TypeD 类型