代码之家  ›  专栏  ›  技术社区  ›  sourav podder

当myItems是一个空数组时,它会说“myItem”。map()不是一个函数。如何解决?

  •  -1
  • sourav podder  · 技术社区  · 2 年前

    当项目处于myItems状态时,网站就正常了。但如果没有项目,网站就会崩溃。

    const [myItems, setMyItems] = useState([]);
    
    return (
    <div className="container my-5">
      <div className="row g-5">
        {
          myItems?.map(myItem => <MySingleItem key={myItem._id} myItem={myItem} handleItemDelete={handleItemDelete} />)
        }
      </div>
    </div>
    );
    
    1 回复  |  直到 2 年前
        1
  •  0
  •   Azarro    2 年前

    问题是你的 myItems 实际接收的值不是数组类型。

    const myItems = 'b';
    myItems.map((a) => a)
    

    也会出现同样的错误 Uncaught TypeError: myItems.map is not a function .

    它在告诉你 .map 不是函数,因为 我的物品 在那个时间点是另一回事。

    检查一下你的手机使用情况 setMyItems 或者共享完整的代码,因为我认为您错误地将其设置为非数组类型。