问一个typescript类型问题?-灵析社区

777七月

给定一条数据结构(API数组里面的个数是未知的)如下所示 const api = [ { name: 'pageA', table: true }, { name: 'pageB', } ] 如何推导出类似这样的类型 type Result = { pageA: boolean pageB: unknown } 即 name 作为key, 如果存在table即为boolean类型,否则为unknown类型 ts的大神们,这个该如何写啊,百度,谷歌都折腾了,还问了gpt也不行,就是值推不出来 我写的是这样的 const api = [ { name: 'pageList', table: true }, { name: 'pageAdd', table: false } ] as const; type Ret = { [K in T[number]['name']]: // 这里不会写 }; type Api = Ret;

阅读量:31

点赞量:0

问AI
半寸时光爱思考
const api = [ { name: 'pageList', table: true, }, { name: 'pageAdd', }, ] as const; type Ret = { [K in T[number]['name']]: Extract extends { table: boolean; } ? boolean : unknown; }; type Api = Ret;