【问题标题】:How to declare an Object with unknown key (UUID) in TypeScript?如何在 TypeScript 中声明具有未知键 (UUID) 的对象?
【发布时间】:2020-09-27 09:17:38
【问题描述】:

我正在学习打字稿。我想知道如何声明一个对象的未知键(这是一个 UUID:我事先不知道值)以及如何声明我需要几个对象(相当于一个数组:“员工:人[]”)。例如,在 JSON 中,我有:

let employees = {
   "5175d6f8-009f-11eb-adc1-0242ac120002": {
      name: "John",
      age: 23
   },
   "04c6dcc5-0442-4858-875d-695d4e933da2": {
      name: "Sophie",
      age: 30
   }
}

我如何在 Typescript 中声明这个结构?提前感谢您的帮助!

【问题讨论】:

  • type Employees = { [key: string]: { name: string;年龄:数字; } };
  • @theJian theJian - 谢谢你的回答。这将帮助我继续前进......

标签: typescript object key uuid


【解决方案1】:

您可以使用index type signature 并像这样定义类型


type Employee = {
  name: string
  age: number
}

type Employees = {
  [key: string]: Employee
}

【讨论】:

  • Pritam Kadam - 作为一个初学者,我认为我必须使用“界面”。非常感谢您的回答!
【解决方案2】:

为简单起见,您还可以使用实用程序类型Record

type Employee = {
   name: string
   age: number
}

type Employees = Record<string, Employee>

【讨论】:

  • Miro - 我正在尝试将 Typescript 添加到我的项目中(React-Redux,fullstack)。感谢您将我介绍给“Record”。
猜你喜欢
  • 1970-01-01
  • 2018-07-04
  • 2021-07-16
  • 2021-09-19
  • 2021-08-14
  • 1970-01-01
  • 2017-10-21
  • 2023-01-26
  • 1970-01-01
相关资源
最近更新 更多