react綁定事件的幾種寫法


方法一:最麻煩的寫法,不推薦

import React from 'react';
class App extends React.Component {
  handleClick() {
    alert('點擊')
  }
  render() {
    return (
      <div>
        <button onClick={this.handleClick.bind(this)}>click</button>
      </div>
    )
  }
}
export default App;

方法二:在構造函數里統一綁定,不常用。

import React from 'react';
class App extends React.Component {
  constructor(props) {
    super(props);
    this.handleClick = this.handleClick.bind(this)
  }
  handleClick() {
    alert('點擊')
  }
  render() {
    return (
      <div>
        <button onClick={this.handleClick}>click</button>
      </div>
    )
  }
}
export default App;

方法三:最常見的寫法。

import React from 'react';
class App extends React.Component {
  constructor(props) {
    super(props);
  }
  handleClick = () => {
    alert('點擊')
  }
  render() {
    return (
      <div>
        <button onClick={this.handleClick}>click</button>
      </div>
    )
  }
}
export default App;

方法四:可以傳參數。

import React from 'react';
class App extends React.Component {
  constructor(props) {
    super(props);
  }
  handleClick (e) {
    alert(e)
  }
  render() {
    return (
      <div>
        <button onClick={(e) => this.handleClick(e)}>click</button>
      </div>
    )
  }
}
export default App;

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM