正在警告:失败的propType:类型为array的无效prop在React中应该是object的对象

问题描述 投票:0回答:3

我目前在控制台中收到此警告

警告:道具类型失败:提供给dataSet.headings的类型为array的道具myComp无效,预期为object

我有一个变量data

let data = {
  headings: ["Monday", "Tuesday", "Wednesday", "Thursday", "Friday"]
}

并且在react render函数中有这个

<MyComp dataSet={data}></MyComp>

MyComp组件中,我具有此propTypes声明

MyComp.propTypes = {
  dataSet: PropTypes.objectOf(
    PropTypes.shape({
      headings: PropTypes.arrayOf(
        PropTypes.string
      )
    })
  )
};

我不确定我在这里做错了什么。谁能说清楚?

非常感谢您

reactjs react-proptypes
3个回答
0
投票

objectOf表示具有指定类型(即所有字符串或数字)的属性值的对象。

但是,您的数据只是具有一个属性headings且其值为字符串数组的对象。


0
投票

您不需要PropTypes.objectof

© www.soinside.com 2019 - 2024. All rights reserved.