繁体   English   中英

如何为属性名称已知和未知的对象定义接口

[英]How to defined interface for object with known and unknown property name

这是我想为其定义接口的对象,

{
  date: '2000-10-01',
  foo: 10,
  bar: 11,
  baz: 12
}

我唯一知道的是date属性始终存在,但我不知道其他属性是什么?

interface IProperty {
  date: string
  [option: string]: number
}

TS抱怨说在这种情况下似乎不起作用

字符串不可分配给字符串索引类型编号。

在原始接口中,您声明该接口将包含字符串索引,并返回一个数字-但是date属性不遵循此要求,这意味着您的接口与之矛盾。

您需要诚实地知道您可以获取数字或字符串(在特定情况下)...

interface IProperty {
  date: string
  [option: string]: string | number;
}

暂无
暂无

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

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