wrappers组件应该提醒包装组件的propTypes吗?

时间:2015-04-28 12:19:36

标签: reactjs

创建组件 A 时,通过添加一些逻辑来包装组件 B ?您是否应该在 A 中提醒 B 所需的propType?

实际例子:

const HorizontalGauge = React.createClass({

  propTypes: {
    //Should I remind required propTypes of GenericHorizontalGauge ?
    showPercentage: PropTypes.bool,
  },

  _formatStackValuePercentage() {
    ...
  }

  render() {
    let { showPercentage, ...otherProps } = this.props;


    return (
      <GenericHorizontalGauge
        formatValue={showPercentage && this._formatValuePercentage}
        {...otherProps}
      />
   );
}

1 个答案:

答案 0 :(得分:1)

您是否在询问GenericHorizontalGauge是否应与propTypes HorizontalGauge相同,因为每个道具都从HorizontalGauge传递到GenericHorizontalGauge

在这种情况下答案是肯定的,他们应该。为避免重复,您可以在一个地方定义道具并重复使用。像这样:

const HorizontalGauge = React.createClass({
  propTypes: GenericHorizontalGauge.propTypes,
  /* Other methods here */
});