react _this
时间: 2023-08-03 19:07:03 浏览: 113
react
在 React 中,使用类组件时,我们经常需要在方法中访问组件的实例。由于 JavaScript 中函数的默认上下文是 undefined,所以需要使用 `_this` 或 `bind` 来确保方法中的 this 指向组件实例。
一种常见的方法是在构造函数中使用 bind,将方法绑定到组件实例上,例如:
```javascript
class MyComponent extends React.Component {
constructor(props) {
super(props);
this.handleClick = this.handleClick.bind(this);
}
handleClick() {
// 在这里可以访问到组件实例的属性和方法
console.log('Clicked');
}
render() {
return (
<button onClick={this.handleClick}>Click me</button>
);
}
}
```
另一种方法是使用箭头函数,因为箭头函数没有自己的 this,它会继承外部作用域的 this。所以可以在箭头函数中直接访问到组件实例,例如:
```javascript
class MyComponent extends React.Component {
handleClick = () => {
// 在这里可以访问到组件实例的属性和方法
console.log('Clicked');
}
render() {
return (
<button onClick={this.handleClick}>Click me</button>
);
}
}
```
无论是使用 bind 还是箭头函数,都可以保证在方法中正确访问到组件实例。
阅读全文