请稍等 ...
×

采纳答案成功!

向帮助你的同学说点啥吧!感谢那些助人为乐的人

为什么super中传入props,constructor才能使用this.props

老师能讲下为什么吗..有点不理解

正在回答

2回答

super算是初始化父类的props 这么理解吧,我们要初始化 才能用,就像日本动画里,天马流星拳都得先喊出口号才使用

0 回复 有任何疑惑可以回复我~
  • 提问者 wykun #1
    constructor() {
    
    super()
    console.log(this.props)//undefined
    console.log(props)//error
    }
    constructor(props) {
    
    super()
    console.log(this.props)//undefined
    console.log(props)//{}
    }
    constructor(props) {
    
    super(props)
    console.log(this.props)//{}
    console.log(props)//{}
    }
    嗯..可是老师.为什么super要传入props呢
    回复 有任何疑惑可以回复我~ 2018-06-22 10:47:22
  • 提问者 wykun #2
    代码写上面了..- -..
    回复 有任何疑惑可以回复我~ 2018-06-22 10:52:46
  • 慕瓜8449030 回复 提问者 wykun #3
    super(props) 之后,能在类里通过 this 访问是因为在 React.Component 里面把传入的 props 绑定到了 this 上去,于是在 super 之后就可以用 this 访问了。 等下 我给你找react的源码
    回复 有任何疑惑可以回复我~ 2018-06-25 18:12:05
提问者 wykun 2018-06-22 10:48:02

constructor() {

super()

console.log(this.props)//undefined console.log(props)//error

}
constructor(props) {

super()

console.log(this.props)//undefined console.log(props)//{}

}
constructor(props) {

super(props)

console.log(this.props)//{} console.log(props)//{}

}

(代码在这..)

0 回复 有任何疑惑可以回复我~
问题已解决,确定采纳
还有疑问,暂不采纳
Redux+React Router+Node.js全栈开发
  • 参与学习       1822    人
  • 解答问题       750    个

全网唯一的React 16+Redux+React Router4实战课程,学到手是你的真本领!

了解课程
意见反馈 帮助中心 APP下载
官方微信