如何为 Array<Object|string> 定义 PropTypes

How to define PropTypes for Array<Object|string>

我有一个名为 options 的道具,它是一个包含对象或字符串的数组。我们如何使用 React PropTypes 来定义 options?我刚刚经历了 https://reactjs.org/docs/typechecking-with-proptypes.html

来自 PropTypes 文档:

     // An array of a certain type
      optionalArrayOf: PropTypes.arrayOf(PropTypes.number),

但是我们如何将字符串和对象放入 PropTypes.arrayOf 中呢?谢谢

要指定 options 数组的 propType 可以同时包含字符串和对象, 像这样声明它的 PropType:

options: PropTypes.arrayOf(
    PropTypes.oneOfType([PropTypes.string, PropTypes.object])
  )

这将接受全字符串数组、全对象数组或同时包含字符串和对象的数组。