[英]setState containing object=>array=> objects
我所擁有的是
const [productData, setproductData] = useState({
title: "",
description: "",
price: "",
selectedFile: "",
images: [{ _id: "", urls: "" }],
});
我將如何更改IMAGES object 中的值。 我想更改 id 和 Urls。
我嘗試了以下方法但不成功。
setproductData({
...productData,
images: [...productData.images._id, i], //where i is any id or number
});
但是當我嘗試執行它時,它說productData.images.id不可迭代。 有什么幫助請...
試試這個
setproductData({
...productData,
images: [{...productData.images[0], _id: i}],
});
如果你想修改選定的 id 只需使用
setproductData({
...productData,
images: productData.images.map((image) => {
if (image._id === i) return {...image} // modify here
return image
}),
});
其中newId
是您的新 _id, newUrls
是您的新網址
setProductData(prev => ({
...prev,
images: [...prev.images, {_id: newId, urls: newUrls}]
})
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.