3 回答
TA贡献1866条经验 获得超5个赞
如果要将整个数组呈现为文本,则需要解析它,并且来自a-kon的答案应该可以完成工作。
但是,如果您想为每个帖子渲染一个元素(例如div),您也需要使用map函数。
return (
<div>
<h1>hello from Sales</h1>
{items.map((item) => (
<li key={item._id}>
<div className="container">
<p> Name: {item.name}</p>
<div>
<p>posts:</p>
{item.posts.map((post) =>(<div>
<span>id: {post._id} </span>
<span>price: {post.price}</span>
</div>))}
</div>
</div>
</li>
))}
</div>
);
TA贡献1799条经验 获得超9个赞
看来你已经熟悉地图了,你可以再次使用它:
<p> posts: <ul>{item.posts.map(e => <li key={e._id}>price: {e.price}</li>)}</ul></p>
TA贡献1784条经验 获得超2个赞
您正在尝试在此处呈现一个数组:posts
<p> posts: {item.posts}</p> //React will not render this array of objects
不能呈现对象数组。但是您可以呈现它的 JSON 表示形式:<p> posts: {JSON.stringify(item.posts)}</p>
添加回答
举报