【问题标题】:react map returned error of Objects are not valid as a React child对象的反应映射返回错误作为 React 子级无效
【发布时间】:2017-05-01 07:50:47
【问题描述】:

我未能使用 lodash 的地图渲染 jxs。我的渲染方法中有这个

return (
    <div>
    {map(groupedByMonths, (obj, index) => 
        <div className="panel">
        <div className="panel-heading">
        {obj}
        </div>
        <div>{obj.price}</div>
        </div>)}
    </div>
    )

但我得到了Objects are not valid as a React child 的错误groupedByMonths 结构看起来像这样

{
    "April": [
        {
            "price": 0,
        },
        {
            "price": 12
        },
        {
            "price": 200
        }
    ]
}

【问题讨论】:

标签: javascript reactjs lodash


【解决方案1】:

不知道如何使用lodash map,我可以建议:

{Object.keys(groupedByMonths).map((obj, index) => 
     <div className="panel">
         <div className="panel-heading">
             {obj}
         </div>
         {groupedByMonths[obj].map((el, i) => <div key={i}> {el.price} </div>)}
     </div>)
}

当我们使用Object.keys(groupedByMonths) 时,它会返回一个包含所有键的array,我们可以在上面使用map。打印键使用{obj},打印值使用{groupedByMonths[obj]}

【讨论】:

  • 不,四月是充满活力的先生。我必须显示月份和其中的项目。
  • 如果我有四月、五月和六月,如何显示月份?
  • @AlanJenshen 检查更新的答案,不知道如何使用 lodash 地图,你可以使用它会工作:)
  • 这太天才了,啊我需要2个循环! Object.keys 完成了这项工作,感谢 Mayank!
猜你喜欢
  • 2018-08-08
  • 2021-04-06
  • 2022-01-10
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多