有类似的东西

x = {"k0": [v0, v1], "k1":[v2]}

我应该如何为x编写正确的原型(prototype)?

最佳答案

您可以使用PropTypes.shape指定一个同时包含k0k1键的对象,并使用PropTypes.arrayOf确保它们是v0v1v2类型的数组。

一些类似的东西:

YourComponent.propTypes = {

  x: PropTypes.shape({
    k0: PropTypes.arrayOf(/* your type here, eg: PropTypes.number */),
    k1: PropTypes.arrayOf(/* other type here, eg: PropTypes.string */)
  })

}

或者,如果您事先不知道键的编号或名称,但是它们都具有相同的类型,则可以使用PropTypes.objectOf。因此,要描述一个对象,其中每个键都映射到字符串数组:
x: PropTypes.objectOf(PropTypes.arrayOf(PropTypes.string))

您可以阅读有关可用PropTypes here的更多信息。

07-24 09:44
查看更多