我们有Partial实用程序类型来使接口的所有字段都是可选的.
例如:
interface A {
a: string;
b: string;
c: string;
}
type A_Optional = Partial<A>
现在,我正在寻找一种内置的实用程序类型,它可以帮助使100个字段成为可选的.
例如,a和b是可选的,而c仍然是必需的.
例如,类似于:
type X = Optionalize<A, 'a', 'b'>
// a?: optional
// b?: optional
// c: required
以下是我到目前为止所取得的成果
type Optionalize<T, K extends keyof T> = Omit<T, K> & Partial<Pick<T, K>>;
它不起作用了
并且我希望我可以指定的字段数量不限,例如:
Optionalize<A, 'x', 'y', 'z', ...etc>