我正在尝试做一个通用的反应形式减速器。为此,“值”必须具有“名称”的 T 类型。我不确定是否全面,所以这里有一个更清楚的例子:
例子:
type RandomObject = { test1: number, test2: string, test3: string[] }
type ActionChangeInput<T> = {
name: keyof T
value: typeof T["name"] // Get type of name
}
Run Code Online (Sandbox Code Playgroud)
我希望值是一个数字,因为名称的值是“test1”并且“test1”类型是数字。
const a: ActionChangeInput<RandomObject> = {
name: "test1", // type is "test1" | "test2" | "test3"
value: 12931 // Expect number here
}
Run Code Online (Sandbox Code Playgroud)
抱歉,如果不清楚,但很难解释我不明白的事情(这就是我在这里的原因)。
typescript ×1