TS,为什么下面这行注释放开后会报错?

type B = [
    {
        test1: 1;
    },
    {
        test2: 2;
    }
];

type A = {
    [k in keyof B[0]]: B[0][k];
    // 为什么下面这行注释放开后会报错?
    // [k in keyof B[1]]: B[1][k];
};
阅读 2.7k
1 个回答
type B = [
    {
        test1: 1;
    },
    {
        test2: 2;
    }
];

type A = {
    [k in keyof B[0]]: B[0][k];
} & {
    [k in keyof B[1]]: B[1][k];
};

使用交叉类型将两个映射类型合并在一起

logo
Microsoft
子站问答
访问
宣传栏