如何在打字稿上为动态对象定义期望的属性类型

问题描述 投票:0回答:1

我制作了一个简单的对象验证器。在我的类的构造函数中,第一个属性将是模式验证,第二个属性是要验证的对象。对于第一个属性,有人知道一种定义这种结构的方法吗?

{
 prop1: { type: "string", message: "some message" },
 prop2: { type: "string", message: "some message" },
 prop3: { type: "string", message: "some message" },
 prop4: { type: "string", message: "some message" },
 prop5: { type: "string", message: "some message" },
 ....
}

唯一无法理解的是如何为属性创建具有不同名称的动态对象,并确保所有内容都是以type: stringmessage: string作为属性的属性。如果没有任何形式可以执行此操作,那么我有办法保证所有属性都具有结构?

typescript types definition
1个回答
0
投票

[添加了注释和示例:

const example: {
  [index: string]: { type: string, message: string }
} = {
  prop1: { type: "string", message: "some message" },
  prop2: { type: "string", message: "some message" },
  prop3: { type: "string", message: "some message" },
  prop4: { type: "string", message: "some message" },
  prop5: { type: "string", message: "some message" },
};
© www.soinside.com 2019 - 2024. All rights reserved.