【发布时间】:2021-06-19 10:37:17
【问题描述】:
我在 React 项目中使用 typescript 并遍历对象数组以返回组件。
我在应用程序中得到了预期的结果,在控制台中没有错误,但在 VSCode 中我得到了这个错误:Property 'amount' does not exist on type 'object'. 对于我在地图中引用的每个属性。
这里是sn-p的代码:
{recentHistory.map((item) => {
if (item.type === 'ADD') {
return <AddItem amount={item.amount} memo={item.memo} />
} else if (item.type === 'SUBTRACT') {
return <SubtractItem amount={item.amount} memo={item.memo} />
}
})}
还有 VSCode 中的截图。
这再次产生了预期的输出并且效果很好,VSCode 只是抛出了这些警告。
【问题讨论】:
-
recentHistory是如何定义和填充的? -
您最近的历史是如何输入的?看来您正在使用对象类型而不是定义自定义接口
-
答案总是把它修得更高。现在你的
recentHistory的类型为object[]。如果它具有正确的类型,那么您无需在.map回调中执行任何操作。 -
recentHistory 上面是 object[] 类型,应该是别的吗?
标签: reactjs typescript visual-studio-code