【发布时间】:2019-09-26 18:49:54
【问题描述】:
我有一个对象,我必须在其中循环两次以检查我应该在 react 中渲染什么。
我的尝试:
// categories is my nested object
const checkedCategories = [...categories];
for (let i = 0; i < categories.length; i++){
for (let j =0; j < categories[i].products.length; j++){
const currentImageType = categories[i].products[j].imageTypes;
// get information from action in store(mobx) to check if image exists
const image = images.getDefault(currImageType);
if (image) {
//error cannot add property visible, object is not extensible
checkedCategories[i].visible = true;
}
}
}
const categoryTabs = checkedCategories.map((category, index) => {
if (category.visible){
return (
<Product
key={category.name}
product={category.products}
/>
)
}
});
我想了解如何解决不可扩展对象的问题并仅渲染具有图像的问题(我从嵌套循环中获得的来自商店的信息)
【问题讨论】:
-
不清楚您要做什么,但查看您的代码,这似乎不正确:
for (let j =0; j < categories[i].products[j].length; j++){。你的意思是for (let j =0; j < categories[i].products.length; j++){? -
当然可以,但是这个错误有一个问题://error cannot add property visible, object is not extensible
标签: javascript reactjs loops