【发布时间】:2020-08-02 04:00:43
【问题描述】:
这是特定于 React 的。
我有一个这样的对象:
interface Profile {
name: string;
title: string;
}
const NewPerson: Profile = {
name: "John Smith",
title: "Software Engineer"
}
我想在 React 组件中返回该对象的键值对,如下所示:
function MyFunc() {
return (
<div>
{
Object.keys(NewPerson).map((key) => (
<div>{key}: {NewPerson[key]}</div>
))
}
</div>
)
}
但是,我可以访问它们 key,但不能访问它的值。我有这个错误:
TS:元素隐式具有“任何”类型,因为“字符串”类型的表达式不能用于索引“配置文件”类型。 在“配置文件”类型上找不到具有“字符串”类型参数的索引签名。
我尝试使用Object.values 和filter,但无法修复。
【问题讨论】:
-
不,我不这么认为。我一直在阅读那里的答案,但在我的情况下分配 keyof typeof 不是一种选择。我只有 1 个接口和 1 个对象。
标签: javascript reactjs typescript