Cách để tránh phải liên kết với biến this trong các phương thức Event callback?
Cách để tránh phải liên kết với biến this trong các phương thức Event callback?
Để tránh phải liên kết với biến this trong các phương thức Event callback trong React, bạn có thể sử dụng một số cách sau:
Arrow functions không có context this riêng, nên this trong arrow functions sẽ tham chiếu đến context this của phạm vi bên ngoài (thường là component).
Ví dụ:
class MyComponent extends React.Component {
handleClick = () => {
console.log(this); // 'this' tham chiếu đến instance của MyComponent
}
render() {
return <button onClick={this.handleClick}>Click me</button>;
}
}
Khi truyền callback, bạn có thể sử dụng arrow function ngay tại chỗ để đảm bảo this được liên kết đúng cách.
Ví dụ:
class MyComponent extends React.Component {
handleClick() {
console.log(this); // 'this' tham chiếu đến instance của MyComponent
}
render() {
return <button onClick={() => this.handleClick()}>Click me</button>;
}
}
middle