打字稿推断出不正确的类型:TS2339 属性“选定”在类型“字符串”上不存在
Posted
技术标签:
【中文标题】打字稿推断出不正确的类型:TS2339 属性“选定”在类型“字符串”上不存在【英文标题】:Typescript infers incorrect type: TS2339 property 'selected' does not exist on type 'string' 【发布时间】:2017-12-24 18:09:22 【问题描述】:在以下示例中,Typescript 为 values 数组的内部元素类型推断类型字符串。然后它抱怨字符串没有“选择”的属性。
let item = values: [selected: "123"]
for (let foobar in item.values)
if (foobar.selected === '123')
console.log('found');
在打字稿操场上运行示例时,出现上述错误: playground link
【问题讨论】:
【参考方案1】:您可能想要for..of
而不是for..in
,更多信息请点击此处:What is the difference between ( for... in ) and ( for... of ) in javascript?
【讨论】:
如果您还告诉 OP foobar 将字符串"0"
作为其值,您的回答可能会更有帮助。
啊,真令人惊讶。我来自 Java 背景,不知道其中的区别。以上是关于打字稿推断出不正确的类型:TS2339 属性“选定”在类型“字符串”上不存在的主要内容,如果未能解决你的问题,请参考以下文章
试图通过 suppressExcessPropertyErrors 编译器选项来抑制 TS2339