gpt4 book ai didi

javascript - React(ES6类)中绑定(bind)上下文的方法哪种比较好

转载 作者:行者123 更新时间:2023-11-29 19:11:53 25 4
gpt4 key购买 nike

React ES6 类中没有自动绑定(bind)。因此开发人员有两种选择如何绑定(bind)上下文:

1) 在构造函数中

export class MyComponent extends React.Component {
constructor(props) {
super(props);
this.myFunction = this.myFunction.bind(this);
}
myFunction() {
// do something
}
render() {
return (
<div onClick={this.myFunction}></div>
);
}
}

2) 内联方法

export class MyComponent extends React.Component {
constructor(props) {
super(props);
}
myFunction() {
// do something
}
render() {
return (
<div onClick={this.myFunction.bind(this)}></div>
);
}
}

哪种方法效率更高?

最佳答案

我推荐箭头函数。

export class MyComponent extends React.Component {
constructor(props) {
super(props);
}
myFunction = (e) => {
// e.preventDefault()
// do something
}
render() {
return (
<div onClick={e => this.myFunction(e)}></div>
);
}
}

bind() 不再是必需的。

关于javascript - React(ES6类)中绑定(bind)上下文的方法哪种比较好,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/38272000/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com