我使用JavaScript Array map()方法迭代数组并将超文本标记语言渲染到我的页面。例如,我有["Mike","David","Peter", Steve"]我可以这样使用Reach渲染它们:
const RenderNames = () => {
let names = ["Mike", "David", "Peter", "Steve"];
const renderNames = (allNames) => {
return allNames.map( (name) => {
return <div> hello {name} </div>
}
}
return (
<div> {renderNames(names)} </div>
)
}
好的,现在我需要规范化该数组以获得这样的对象: {“243fx”: “Mike”, “g3Frt”: “David”, “8879a”: “Peter”, “dkr45”: “Steve”}
那么我如何循环这个对象并渲染所有这些元素呢?
const RenderNames = () => {
let names = {"243fx": "Mike", "g3Frt": "David", "8879a": "Peter", "dkr45": "Steve"};
const renderNames = (allNames) => {
????
????
}
return (
<div> {renderNames(names)} </div>
)
}
您必须使用Object.entries
遍历对象,该对象将为您提供键
(属性名称)及其值
const RenderNames = () => {
const names = {
"243fx": "Mike",
g3Frt: "David",
"8879a": "Peter",
dkr45: "Steve",
};
const renderNames = (allNames) => {
return Object.entries(allNames).map(([_key, value]) => <div>hello {value}</div>);
};
return <div> {renderNames(names)} </div>;
};