为了账号安全,请及时绑定邮箱和手机立即绑定

React学习过程中遇到一句不理解的语法

React学习过程中遇到一句不理解的语法

守候你守候我 2019-03-20 09:07:41
我先贴上代码,然后说说我自己的理解,请高手帮我指正一下class AutoFocusInput extends Component {  componentDidMount () {    this.input.focus()  }  render () {    return (      <input ref={(input) => this.input = input} />    )  }}ReactDOM.render(  <AutoFocusInput />,  document.getElementById('root'))<input ref={(input) => this.input = input} />这段代码,我实在不理解this指代的是什么,是ref所在的input标签?还是class AutoFocusInput这段代码<input ref={(input) => this.input = input} />翻译过来就是<input ref={function(input) ={return this.input = input} />  就是让this.input=input,这里的this就是指代的input标签吧,假如我有很多个这种input标签,this的含义就是指我当前选择的这个input表现。不知道我以上的理解到底对不对,谢谢
查看完整描述

3 回答

?
慕仙森

TA贡献1827条经验 获得超8个赞

jsx 最终 会编译成 最下下面的 形式, 这样 你在看 箭头函数 this 的绑定

https://img1.sycdn.imooc.com//5c919beb0001f03508000509.jpg

https://img1.sycdn.imooc.com//5c919bec0001ecdb08000115.jpg

查看完整回答
反对 回复 2019-03-20
?
富国沪深

TA贡献1790条经验 获得超9个赞

这里的 this 指的是当前 AutoFocusInput 实例。


查看完整回答
反对 回复 2019-03-20
?
小怪兽爱吃肉

TA贡献1852条经验 获得超1个赞

this指向的是当前这个组件


查看完整回答
反对 回复 2019-03-20
  • 3 回答
  • 0 关注
  • 413 浏览
慕课专栏
更多

添加回答

举报

0/150
提交
取消
微信客服

购课补贴
联系客服咨询优惠详情

帮助反馈 APP下载

慕课网APP
您的移动学习伙伴

公众号

扫描二维码
关注慕课网微信公众号