在下面的函数中将Record
构建为Partial
时如何返回?
type mytype = 'a' | 'b' | 'c' | 'd';
function generate(): Record<mytype,any> {
const p: Partial<Record<mytype, any>> = {};
// some code which dynamically builds up 'p'
return p;
}
我得到的错误是:
[ts] 类型“ Partial>”不可分配给“记录”类型。 属性“ a”在“ Partial>”类型中是可选的,但在“记录”类型中是必需的。
更新: 我发现我可以执行以下操作,但这是正确的方法吗?
return p as Record<mytype, any>;