是否有必要使用ES6方法的传统语法?
class MyClass {
myMethod() {
this.myVariable++;
}
}
当我使用 myMethod()
作为某个事件的回调函数时,我必须像这样编写代码(在JSX中):
// Anonymous function.
onClick={() => { this.myMethod(); }}
// Or bind this.
onClick={this.myMethod.bind(this)}
但如果我将方法声明为箭头函数:
class MyClass {
myMethod = () => {
this.myVariable++;
}
}
我可以用JSX写的比我能够写的更简洁:
onClick={this.myMethod}
{ }
是错误的。 - Pointy