当 myItems 是一个空数组时,它表示 'myItem.map() is not a function'。怎么解决?
when myItems is an empty array, it is saying 'myItem.map() is not a function'. how to solve?
当项目出现在 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>
);
问题是您的 myItems
实际上接收到的值不是数组类型。
正在做
const myItems = 'b';
myItems.map((a) => a)
会给出同样的错误Uncaught TypeError: myItems.map is not a function
。
它告诉你 .map
不是一个函数,因为 myItems
在那个时间点的值的数据类型是别的东西。
检查您在其余组件代码中对 setMyItems
的使用或共享完整代码,因为我相信您错误地将其设置为 non-array 类型。
当项目出现在 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>
);
问题是您的 myItems
实际上接收到的值不是数组类型。
正在做
const myItems = 'b';
myItems.map((a) => a)
会给出同样的错误Uncaught TypeError: myItems.map is not a function
。
它告诉你 .map
不是一个函数,因为 myItems
在那个时间点的值的数据类型是别的东西。
检查您在其余组件代码中对 setMyItems
的使用或共享完整代码,因为我相信您错误地将其设置为 non-array 类型。