您可能已返回undefined,数组或其他一些无效对象

时间:2018-04-23 07:14:42

标签: javascript reactjs

const renderCategories = (props) => {
  console.log(props);
  return props.categories.map(category => (
    <Category
      key={category.categoryID}
      category={category}
      isSelected={props.selectedCategory === category.categoryID}
      setSelectedCategory={props.setSelectedCategory}
    />
  ));
};

这是返回迭代类别的函数。我认为我在语法上犯了一些错误,这就是为什么我收到以下错误,You may have returned undefined, an array or some other invalid object.我知道这是一个常见的问题,但我无法找到与我的代码相关的解决方案。

1 个答案:

答案 0 :(得分:1)

仅在React v16.0中支持在渲染函数中返回数组。

您需要将其包裹在div或其他内容中

return (
  <div>
    {props.categories.map((category) => (
      <Category
        key={category.categoryID}
        category={category}
        isSelected={props.selectedCategory === category.categoryID}
        setSelectedCategory={props.setSelectedCategory}
      />
    ))}
  </div>
);