问答题1303/1593constructor中super与props参数一起使用的目的是什么?

难度:
2021-07-04 创建

参考答案:

在调用方法之前,子类构造函数无法使用this引用super()。

在ES6中,在子类的constructor中必须先调用super才能引用this。

在constructor中可以使用this.props

  • 使用props:
1class MyComponent extends React.Component { 2 constructor(props) { 3 super(props); 4 console.log(this.props); // Prints { name: 'sudheer',age: 30 } 5 } 6}
  • 不使用props:
1class MyComponent extends React.Component { 2 constructor(props) { 3 super(); 4 console.log(this.props); // Prints undefined 5 // But Props parameter is still available 6 console.log(props); // Prints { name: 'sudheer',age: 30 } 7 } 8 9 render() { 10 // No difference outside constructor 11 console.log(this.props) // Prints { name: 'sudheer',age: 30 } 12 } 13}

上面的代码片段揭示了this.props行为仅在构造函数中有所不同。外部构造函数相同。

最近更新时间:2024-08-10

赞赏支持

预览

题库维护不易,您的支持就是我们最大的动力!