在 React JSX 中循环内循环
Posted
技术标签:
【中文标题】在 React JSX 中循环内循环【英文标题】:Loop inside of a loop, in React JSX 【发布时间】:2018-05-17 21:13:11 【问题描述】:我正在尝试渲染反应,jsx,循环内的循环 如下:
this.state.ans.map(function(item)
return (
this.state.quest.map(
function(item1) return (item1)
)
item
)
)
这对任何其他建议都不起作用
【问题讨论】:
是渲染中的所有内容吗?你到底想返回什么?通常你想做所有的循环并在最后返回所有循环的结果。 【参考方案1】:您忘记了第一个 map
语句中的包装 div:
render()
return (
<div>
this.state.ans.map(item =>
<div> // this div was missing
this.state.quest.map(quest => quest)
item
</div>
)
</div>
)
【讨论】:
很好,是的,这就是问题所在!【参考方案2】:试试这样:
render()
return (
.
.
.
this.state.ans.map((item) =>
return (
<div>
this.state.quest.map((item1) =>
return (item1);
)
item
</div>
);
)
);
基本上这个想法是,你应该返回一个元素——在我的例子中是一个div
(你不必使用最新的反应版本)。此外,使用 lambdas 以使 this
引用正确的上下文。
如果不使用ES6,可以在render
方法的开头添加如下语句:
var that = this;
然后在 return
中使用 that
和 function()
语法。
【讨论】:
以上是关于在 React JSX 中循环内循环的主要内容,如果未能解决你的问题,请参考以下文章
[react] 写例子说明React如何在JSX中实现for循环
如何在 React JSX 中循环遍历数组中的某些项目 [重复]
即使 .map 循环通过数组的所有索引,也无法在我的 React 应用程序中的 array.map 中显示我的 JSX 中的图像
this指向数据双向流传递参数JSX中循环React中样式路由引入资源的其它方式create-react-app脚手架事件处理获取数据UI框架推荐pc桌面应用electronjs