TypeScript中interface定义数组对象多重嵌套

1、数组包对象

类型

{
    list:<list>[
      {
        img: "../../../../image/1.png",
        text: "限时抢购",
        url: "/pages/index/index"
      },
    ]
}

接口定义

interface listItem{
  img: string,
  text: string,
  url: string
}

interface list{
  [index: number]: listItem
}

2、多重嵌套,数组包对象包数组包对象

类型

    list: <list>[
      {
        url: "/pages/index/indedx",
        text: "text",
        data: [
          {
            name: "test",
            info: {
              num: 10,
              price: 20
            }
          },
          {
            name: "test",
            info: {
              num: 10,
              price: 20
            }
          }
        ]
      },
      {
        url: "/pages/index/indedx",
        text: "text",
        data: [
          {
            name: "test",
            info: {
              num: 10,
              price: 20
            }
          }
        ]
      },
    ],

接口定义

interface dataObj{
  num:number,
  price:number,
}
interface dataItem{
  name:string,
  info:dataObj,
}
interface data{
  [index: number]: dataItem
}
interface listItem{
  url:string,
  text:string,
  data:data
}
interface list{
  [index: number]: listItem
}
posted @ 2022-04-28 10:09  Pavetr  阅读(7324)  评论(3)    收藏  举报