小编Chr*_*und的帖子

TypeScript 2.1中的递归部分<T>

我有这个界面:

export interface UserSettings
{
    one: {
        three: number;
        four: number;
    };
    two: {
        five: number;
        six: number;
    };
}
Run Code Online (Sandbox Code Playgroud)

...并想把它变成这个:

export interface UserSettingsForUpdate
{
    one?: {
        three?: number;
        four?: number;
    };
    two?: {
        five?: number;
        six?: number;
    };
}
Run Code Online (Sandbox Code Playgroud)

......但Partial<UserSettings>产生了这个:

{
    one?: {
        three: number;
        four: number;
    };
    two?: {
        five: number;
        six: number;
    };
}
Run Code Online (Sandbox Code Playgroud)

是否可以使用映射类型使所有深度上的所有属性都可选,或者我是否必须手动创建接口?

typescript

32
推荐指数
4
解决办法
4044
查看次数

标签 统计

typescript ×1