小能豆

React propTypes:objectOf 与 shape?

javascript

PropTypes.objectOf和有什么区别PropTypes.shape?在PropTypes中:

// An object with property values of a certain type
optionalObjectOf: PropTypes.objectOf(PropTypes.number)

对比

// An object taking on a particular shape
optionalObjectWithShape: PropTypes.shape({
  color: PropTypes.string,
  fontSize: PropTypes.number
})

我什么时候该用objectOf,什么时候该用shape


阅读 48

收藏
2024-06-12

共1个答案

小能豆

PropTypes.objectOf用于描述所有属性都属于同一类型的对象。

    const objectOfProp = {
        latitude: 37.331706,
        longitude: -122.030783
    }
    // PropTypes.objectOf(PropTypes.number)

PropTypes.shape用于描述预先知道其键的对象,并且可以代表不同的类型。

    const shapeProp = {
        name: 'Jane',
        age: 25
    }
    // PropTypes.shape({ name: PropTypes.string, age: PropTypes.number })
2024-06-12