当前位置: 首页 > 面试题库 >

ES6类中对super(props)的调用重要吗?

吴单鹗
2023-03-14
问题内容

假设我有以下课程:

class Tabs extends React.Component {
  displayName: Tabs;

  static propTypes = {
  selected: React.PropTypes.number,
  children: React.PropTypes.oneOfType([
    React.PropTypes.array,
    React.PropTypes.element
  ]).isRequired
  };

  constructor() {
  super();
  this.state = {
    selected: 0,
    maxSelected: 0
  };

  render() {
    return(
      <div>
       {this.props.selected}
       {this.props.children}
      </div>
    );
  }
};

我想知道是否传递以下构造函数很重要:

constructor(props) {
  super(props);
}

我当前的代码工作正常,但是我想知道这是否是一个好习惯。


问题答案:

根据React团队的Ben Alpert的说法,如果您打算在this.props构造函数内部使用,则仅需要将prop传递给构造函数。调用构造函数后,React从外部将props附加到组件。



 类似资料:
  • 问题内容: 当是重要的传球到了,为什么? 问题答案: 只有一种原因需要传递给: 当您要在构造函数中访问时。 通过: 未通过: 注意,通过或不通过,以有 没有影响 对以后的用途之外。也就是说,或事件处理程序 始终 可以访问它。 这是索菲·阿尔珀特(Sophie Alpert)对类似问题的回答中明确指出的。 建议使用“ 状态和生命周期,将本地状态添加到类,第2点”中的文档: 类组件应始终使用调用基本构

  • 问题内容: 我意识到super关键字可用于调用父组件中的函数。但是,我不清楚您为什么在下面的示例中使用super关键字-只是将传递给构造器的所有prop传递给它。 有人可以回应一下在ES6类构造函数中使用super关键字的各种原因吗? 问题答案: super允许您访问父类的构造方法。包含props的唯一原因是在构造函数内部访问this.props。 使用es6类时,React中的“ super()

  • 问题内容: 在Python中,如何选择要调用的Parent方法?假设我要调用父ASDF2的方法。似乎我必须在super()中指定 ASDF1 。如果要调用ASDF3 ,则必须指定 ASDF2 吗? 在我看来是疯子。我究竟做错了什么? 问题答案: 那不是为了什么 超级基本上是按照特定顺序选择一个(或全部)父母。如果您只想调用单亲方法,请执行此操作

  • 本文向大家介绍ES6 class类链式继承,实例化及react super(props)原理详解,包括了ES6 class类链式继承,实例化及react super(props)原理详解的使用技巧和注意事项,需要的朋友参考一下 本文实例讲述了ES6 class类链式继承,实例化及react super(props)原理。分享给大家供大家参考,具体如下: class定义类是es6提供的新的api,比

  • 问题内容: 我对JS和React玩的不好。 此处的React文档指出以下内容: 在实现子类的构造函数时,应先调用其他语句。否则, 将在构造函数中未定义,这可能会导致错误。 我的问题是这实际上如何工作?在我的构造函数中神奇启用的功能是什么? 问题答案: 在您提到的文档中。它以javascript的ES6标准编码。 所以这句话 这意味着Greeting是从继承的,通过调用,您实际上是在使用参数调用父元