【发布时间】:2019-03-23 11:09:37
【问题描述】:
我想使用 Typescript 接口实例中的属性来计算第二个属性。我一直在研究泛型,但我还没有成功实现这一点。 :
这是一个例子
// Here I define all valid names - works fine!
type ModalNames = 'payment' | 'source'
// This interface implements all expected payloads
// for each name
interface ModalPayloads {
payment: {
plan: string
}
source: {
metadataId: string
}
}
// How do I use the instance name
// to grab the correct payload property?
export interface ShowModalPayload {
name: ModalNames
modalProps?: ModalPayloads[instance.name]
}
换句话说,对于ShowModalPayload 中的给定instance,我想将modalProps 分配给从instance.name 派生的类型。
希望这是有道理的!
【问题讨论】:
标签: javascript typescript interface typescript-types