首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >如何在对象类型记录中强制字段

如何在对象类型记录中强制字段
EN

Stack Overflow用户
提问于 2021-05-07 05:48:22
回答 1查看 147关注 0票数 0

我必须创建一个类型,它有一个必需的属性,其余的可以是任何东西。例如,我希望拥有所有具有_id: string的对象

代码语言:javascript
复制
{_id: "123"} // will work
{a: 1} // wont work because doesnt have _id field 
{_id:"sadad", a:1} // will work

我怎样才能用打字本做这件事?

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2021-05-07 05:56:55

显式通知类型有一个带有_id的键,在此之后,它可以是任何对象键值对Record<string, unknown>

代码语言:javascript
复制
type ObjectType = { _id: string } & Record<string, unknown>;

const a: ObjectType = { _id: "123" }; // will work
const b: ObjectType = { a: 1 }; // Property '_id' is missing in type
const c: ObjectType = { _id: "sadad", a: 1 }; // will work

P.S. RecordKey参考资料

What is the Record type in typescript?

票数 2
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/67429586

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档