码迷,mamicode.com
首页 > 其他好文 > 详细

React类的方法绑定 this 的方式

时间:2020-03-01 22:08:46      阅读:109      评论:0      收藏:0      [点我收藏+]

标签:箭头函数   function   ast   xtend   keyword   comm   pop   word   src   

一、在constructor中bind绑定组件的this:

class Button extends React.Component{
  constructor(pops){
    super();
    this.handleClick = this.handleClick.bind(this);
  }

  handleClick = () => {
    console.log("this is ", this);
  }

  render(){
    return (<button onClick={this.handleClick}>按钮</button>)
  }
}
技术图片

二、方法使用时绑定 this:

class Button extends React.Component{
  constructor(props){
    super(props);
  }

  handleClick = () => {
    console.log("this is ", this);
  }

  render(){
    return (<button onClick={this.handleClick.bind(this)}>按钮</button>)
  }
}

ReactDOM.render(
  <Button/>,
  document.getElementById("app")
);
技术图片

三、使用属性初始化语法:

class LoggingButton extends React.Component {
  // 这个语法确保了 `this` 绑定在  handleClick 中
  // 这里只是一个测试
  handleClick = () => {
    console.log(‘this is:‘, this);
  }
 
  render() {
    return (
      <button onClick={this.handleClick}>
        Click me
      </button>
    );
  }
}
技术图片

四、在回调函数中使用 箭头函数:

class LoggingButton extends React.Component {
  handleClick() {
    console.log(‘this is:‘, this);
  }
 
  render() {
    //  这个语法确保了 `this` 绑定在  handleClick 中
    return (
      <button onClick={(e) => this.handleClick(e)}>
        Click me
      </button>
    );
  }
}
技术图片

React类的方法绑定 this 的方式

标签:箭头函数   function   ast   xtend   keyword   comm   pop   word   src   

原文地址:https://www.cnblogs.com/samve/p/12392120.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!