首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >对象作为React子对象无效(找到:带有键{Dname,recipe_diet}的对象)。如果要呈现子集合,请使用数组。

对象作为React子对象无效(找到:带有键{Dname,recipe_diet}的对象)。如果要呈现子集合,请使用数组。
EN

Stack Overflow用户
提问于 2022-08-27 19:43:54
回答 1查看 29关注 0票数 0

我可以得到我所有的api信息,但是当我创建一个新的“菜谱”时,我尝试在前面显示它,我得到了这个错误,但是只是在我创建的“食谱”上,:c。

代码语言:javascript
复制
import React from "react";
import './estilos/Cartita.css'

export default function Card({image, title, diets, healthScore, createdInBd, id}){

return (
    <div className="containerr">

<div className="card">
    <h2>{id}</h2>


        <img src={image} alt="img not found" width="200px" height="250px"/>



<h2>NOMBRE:</h2>
<h5>{title}</h5>
<p>Tipo de dieta</p>
<div >
{
(!diets.length)?
<span>This Recipe doesnt have a diet
</span> : 
 
 diets.map((diet) => (
 
 <span><li key={diets}> {diet}</li></span>
                        )
                    )}
 </div>

<h2>HEALTSCORE:</h2>
<h5>{healthScore}</h5>


<h5>{createdInBd}</h5>
</div>
   </div>
);

}

这是Api信息,上面的一个来自api,另一个是我创建的:

在这里输入图像描述

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2022-08-27 20:37:14

由于屏幕截图diets可以是字符串数组或对象数组,因此需要检查diet是否为对象。

代码语言:javascript
复制
 {!diets.length ?
  <span>This Recipe doesnt have a diet</span> : 
  diets.map((diet) => (
    <span><li key={diet.id}>{typeof diet === 'string' ? diet : diet.Dname}</li></span>
    )
  )}
票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/73513954

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档