【发布时间】:2021-10-03 17:51:42
【问题描述】:
我是 React 新手,不知道为什么会收到此错误。我在 map 方法中为每个列表元素分配了一个键,但仍然收到错误消息,指出应该为每个元素分配一个键。 这是我的代码:
import React, { useState, useEffect } from "react";
import "./App.css";
const namesURL = "http://api.names.com/search/names";
function App() {
const [names, setNames] = useState([]);
useEffect(() => {
getNames();
}, []);
const getNames = async () => {
const response = await fetch(namesURL);
const jsonData = await response.json();
jsonData.sort(function(a, b) {
let textA = a.name
let textB = b.name
return (textA < textB) ? -1 : (textA > textB) ? 1 : 0;
});
console.log(jsonData);
setNames(jsonData);
};
return (
<div className="App">
{names.map(name => (
<ul>
<li key={name.id}>
<h2>{name.name}</h2>
<div></div>
<img src={name.image} alt="image"></img>
<hr></hr>
</li>
</ul>
))}
</div>
);
}
export default App;
【问题讨论】:
标签: reactjs