Reactjs 如何使用react进行循环?

Reactjs 如何使用react进行循环?,reactjs,for-loop,bootstrap-4,Reactjs,For Loop,Bootstrap 4,我是个新手,我真正想要的是一个简单的for循环,它为数组中的每个用户创建menuitem元素,标题是他们的名字。这就是我写它的方式,但我不知道如何在react中这样做。我想应该有一张地图,但我似乎也不能让它工作,希望这里的任何人都能帮助我 for (var i = 0; i < Users.length; i++) { <MenuItem eventKey=[i]>User.firstname[i]</MenuItem> } for(var i=0;i( us

我是个新手,我真正想要的是一个简单的for循环,它为数组中的每个用户创建menuitem元素,标题是他们的名字。这就是我写它的方式,但我不知道如何在react中这样做。我想应该有一张地图,但我似乎也不能让它工作,希望这里的任何人都能帮助我

for (var i = 0; i < Users.length; i++) {
  <MenuItem eventKey=[i]>User.firstname[i]</MenuItem>
}
for(var i=0;i
使用,您可以执行以下操作:

Users.map((user, index) => (
  <MenuItem eventKey={index}>user.firstname</MenuItem>
));
Users.map((用户,索引)=>(
user.firstname
));

组件的
render
方法或无状态组件函数返回要渲染的元素

如果要使用循环,则可以:

render() {
    let menuItems = [];
    for (var i = 0; i < Users.length; i++) {
        menuItems.push(<MenuItem eventKey=[i]>User.firstname[i]</MenuItem>);
    }
    return <div>{menuItems}</div>;
}
render(){
设menuItems=[];
对于(var i=0;i
更常见的是看到更实用的样式,例如使用映射返回元素数组:

render() {
    return <div>
    {
        Users.map((user, i) =>
            <MenuItem eventKey=[i]>User.firstname[i]</MenuItem>)
    }
    </div>;
}
render(){
返回
{
Users.map((用户,i)=>
User.firstname[i])
}
;
}

请注意,在任何一种情况下,数组的每个元素都缺少
属性,因此您将看到警告。数组中的每个元素都应该有一个唯一的键,最好是某种形式的ID,而不仅仅是数组索引。

不能使用
for
循环在JSX元素中进行迭代。改用。@MostafizRahman是正确的。react组件需要一个字符串、另一个组件或组件数组。For循环不返回任何这些。这就是为什么我们必须将for循环的值存储在变量中并返回变量。看到了吗