我总是执行以下操作来绑定(bind) React 组件中的函数的 this
this.updateInput = this.updateInput.bind(this);
但是我在构造函数之外看到越来越多的箭头方法,就像这样
updateInput = () => ( code here )
但是当我在代码中尝试这样做时,它会抛出语法错误。为什么?
最佳答案
我相信您指的是这样的语法:
class MyClass {
constructor() {
}
myBoundFunction = () => { //<--- this line inside of a class
}
}
将箭头函数声明为类定义的一部分是一项实验性功能,不是 javascript 语言的标准部分,这就是您看到语法错误的原因。如果你想使用这个语法,你可以使用 Babel's transform-class-properties feature
如果您不使用 babel,那么您需要在构造函数中手动绑定(bind)该函数。
关于javascript - 在react组件中使用箭头函数绑定(bind)函数,而不是在构造函数中绑定(bind),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/46375228/