我有两个属性'user'
的模型'username'
& 'plan'
其中'plan'
是另一个模型'plan'
的引用,其中属性为'name'
& 'description'
。现在当我在API中使用以下查询来检索数据时 -
`user.find().populate('plan')`
我正在尝试使用
在前端渲染这些数据this.state.users.map(re => (
<tr key={re._id}>
<th>{re.username}</th>
<th>{re.plan}</th>
</tr>
)
此处re.plan
会返回该属性的_id
。要获取name
属性,我必须使用re.plan.name
。由于我有一些没有任何plan
属性的属性,因此返回错误。
Query ---
{
"_id": "5a8be9ce4f506927a8d2cacb",
"username": "kjbfhisdugfiasdb",
"plan": {
"_id": "5a64bbd3f671402b90ce5fc9",
"name": " test 3"
},
},
{
"_id": "5a82bcb4c72440221442399f",
"username": "test",
}
如何解决此问题? 提前致谢
答案 0 :(得分:0)
您可以使用这样的条件渲染:
<th>{re.plan ? re.plan.name : ""}</th>
答案 1 :(得分:0)
只需渲染{re.plan && re.plan.name }