繁体   English   中英

如何使用打字稿创建命名对象?

[英]How to create named object with typescript?

使用打字稿为我的angular2服务获取一些接口设置。 遇到配置问题。

我希望能够访问像myItem['chickens']并获取以下对象:

{
  name:"chicken",
  price:1000,
  names:["Harry", "Barry", "Larry"]
}

如何以正确的方式编写接口,以便如前所述将数据取回?

export interface StoreItem {
      itemName:{
        itemName: string;
        price: number;
        nameList: Array<string>;
      }
    }

您的StoreItem具有字符串键和键入的值,因此您可以执行以下操作:

interface StoreItem {
  [key: string]: {
    itemName: string;
    price: number;
    nameList: Array<string>;  // or string[]
  }
}

这将很高兴地允许例如:

let myItem: StoreItem = {
  chickens: {
    name: 'chicken',
    price: 1000,
    names: ['Harry', 'Barry', 'Larry']
  }
};

您可以将内部项目以myItem['chickens']myItem.chickens

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM