[英]How to map a nested object in react in a rails associated models?
设置带有很多评论的简单帖子模型后,如何通过react从帖子中获取评论的最佳方法是什么?
例如在rails中,循环将是:
<ul>
<%= @post.comments.each do |c| %>
<li><%= c.title %></li>
<% end %>
</ul>
在反应中,映射是等效的,但是在这种情况下,来自对象的映射仍然会造成混淆。
var comments = this.state.comments.map(c => {
return (
<div key={comment.id}>
<ul >
<li>{comment.title}</li>
</ul>
</div>
);
});
所以我已经尝试过了,并且按预期没有效果。 因此,有人对React的地图嵌套数组有任何暗示吗?
var post = this.state.post.map(p => {
return (
<div key={comment.id}>
p.comments.map(c => {
<div key={ct.id}></div>
});
</div>
);
});
以下两个选项中的任何一个都可以为您工作。 您必须对嵌套数组进行条件检查并添加return。
下面的.map与return一起使用
const postItems = this.state.post && this.state.post.map(p => {
return (
<div key={comment.id}>
if(p.comments){
p.comments.map(c => {
return <div key={ct.id}></div>
});
}
</div>
);
});
或.map无法返回
const postItems = this.state.post && this.state.post.map(p => (
<div key={comment.id}>
if(p.comments){
p.comments.map(c => (
<div key={ct.id}></div>
));
}
</div>
));
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.