【问题标题】:React cannot render array of elements from apiReact 无法从 api 渲染元素数组
【发布时间】:2020-08-02 00:24:24
【问题描述】:

当我尝试映射这个时:

 //api [{"id":1,"label":"Testing","items":[{"id":1,"value":"Learn React","flag":2},{"id":2,"value":"Learn .net","flag":2}]},{"id":2,"label":"Testing","items":[{"id":1,"value":"Learn React","flag":2},{"id":2,"value":"Learn .net","flag":2}]}]

 renderLists() {
        const lists =this.props.data.map((item, index) => <Holder data={item} key={index} />);
        console.log(this.props.data);
        return (
            { lists }
        ); 
    }

函数我得到一个错误:

对象作为 React 子对象无效(找到:带有键 {lists} 的对象)。如果您打算渲染一组子项,请改用数组。

【问题讨论】:

  • 在问题中添加代码
  • 你的props.data怎么样?
  • 使用this.props.data.items.map()
  • &lt;Holder /&gt; 长什么样子?
  • 包装它解决了问题:)

标签: javascript node.js json reactjs


【解决方案1】:

你试过包装吗?例如:

const lists = this.props.data.map((item, index) => <Holder data={item} key={index} />);
console.log(this.props.data);
return (
    <React.Fragment>
      { lists }
    </React.Fragment>
);

【讨论】:

    猜你喜欢
    • 2017-03-08
    • 1970-01-01
    • 1970-01-01
    • 2017-08-11
    • 2018-03-07
    • 2020-04-14
    • 2021-12-07
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多