Javascript 数组或迭代器应具有唯一的;“关键”;道具

Javascript 数组或迭代器应具有唯一的;“关键”;道具,javascript,reactjs,Javascript,Reactjs,我试图显示一个从服务器获取数据并显示其中所有信息的表。代码正在打印我的表头和从获取的API中获取的第一个对象的信息 这给了我一个错误 警告:数组或迭代器中的每个子级都应具有唯一的“键” 道具检查MyTable的渲染方法 从“React”导入React; 导出默认类MyTable扩展React.Component{ 建造师(道具){ 超级(道具); 控制台日志(道具); } createTable=()=>{ 设table=[]; 让tableHeader=( {this.props.column

我试图显示一个从服务器获取数据并显示其中所有信息的表。代码正在打印我的表头和从获取的API中获取的第一个对象的信息

这给了我一个错误

警告:数组或迭代器中的每个子级都应具有唯一的“键” 道具检查
MyTable
的渲染方法

从“React”导入React;
导出默认类MyTable扩展React.Component{
建造师(道具){
超级(道具);
控制台日志(道具);
}
createTable=()=>{
设table=[];
让tableHeader=(
{this.props.columns.map(column=>{
返回{column.name};
})}
);
设tableRows=[];
为了(
设i=this.props.pgNo*this.props.maxItems;
ithis.props.users.length){
打破
}否则{
让行=(
{this.props.columns.map(column=>{
返回(
{this.props.users[i][column.key]}
);
})}
);
tableRows.push(row);
}
设tableBody={tableRows};
返回(
{table}
{tableHeader}
{表体}
);
}
};
render(){
返回{this.createTable()};
}
}

问题很可能是您的
元素没有键。请尝试将它们
i
作为键

if (i > this.props.users.length) {
    break;
} else {
    let row = (
      <tr> <--- You should have a key prop here
if(i>this.props.users.length){
打破
}否则{
让行=(

问题很可能是您的
元素没有键。请尝试将它们
i
作为键

if (i > this.props.users.length) {
    break;
} else {
    let row = (
      <tr> <--- You should have a key prop here
if(i>this.props.users.length){
打破
}否则{
让行=(

你给了th和td一把钥匙,但是你

忘记在tr中为行变量写入键


你给了th和td一把钥匙,但是你

忘记在tr中为行变量写入键


呈现React元素数组时,每个元素上都需要一个键,React才能知道如何更新每个元素

const list = ["Apple", "Banana", "Orange"]

class Component extends React.Component {
  render() {
    return list.map(item => {
      return (
        <div key={item}>{item}</div>
      )
    })
  }
}
const list=[“苹果”、“香蕉”、“橙色”]
类组件扩展了React.Component{
render(){
返回列表.map(项=>{
返回(
{item}
)
})
}
}

您可以阅读有关它的更多信息

在呈现React元素数组时,React需要每个元素上的一个键才能知道如何更新每个元素

const list = ["Apple", "Banana", "Orange"]

class Component extends React.Component {
  render() {
    return list.map(item => {
      return (
        <div key={item}>{item}</div>
      )
    })
  }
}
const list=[“苹果”、“香蕉”、“橙色”]
类组件扩展了React.Component{
render(){
返回列表.map(项=>{
返回(
{item}
)
})
}
}

您可以阅读更多有关它的信息

不建议使用索引作为键,它可能会导致错误行为,其中项目不会更新,因为它的键没有更新。不建议使用索引作为键,它可能会导致错误行为,项目不会更新,因为它的键没有更新。即使给出键,它也不会显示我的所有数据。它仍然显示o从提取的json数据中只显示1个对象,即使在给出一个键之后,它也不会显示我的所有数据。它仍然只显示从提取的json数据中的1个对象