打字稿对象

席尔瓦

请协助,我正在尝试将对象转换为某物的实例。我有以下数据作为来自 API 的对象:

{
"0": {
    "0": {
        "1": 2
    },
    "1": {
        "1": 5
    },
    "2": {
        "1": 9
    },
    "3": {
        "1": 3
    },
    "4": {
        "1": 1
    }
},
"1": {
    "0": {
        "1": 7
    },
    "1": {
        "1": 6
    },
    "2": {
        "1": 10
    },
    "3": {
        "1": 8
    },
    "4": {
        "1": 4
    }
  }
}

我的枚举如下:

  export enum Enum3 {
    week1 = 0,
    ....
    week4
  }


   export enum Enum2 {
        day1 = 0,
        .....
        day10
   }

   export enum Enum1 {
        monday = 0,
        .....
        friday
   }

尝试了以下声明但没有奏效:

         // number is the number of racers entering the race
        let RaceDay: {[key: Enum1 ]: number };
        let Days: {[key: Enum2 ]: RaceDay[Key] };
        let Weeks: {[key: Enum3 ]:  Days[Key] };

        Weeks = ApiData; // data above.

我如何声明或实例化这样的对象?谢谢你。

菲利克斯·莱姆克

您有一个 3 次嵌套的对象结构:

interface RaceDay {
  [key: string]: number
}
interface Days {
  [key: string]: RaceDay
}
interface Weeeks {
  [key: string]: Days
}

const data: Weeks = { } as Weeks; // your object with type of 'Object' as above

分配你的对象对我有用。希望这有帮助。

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章