javascript - 在react组件中使用箭头函数绑定(bind)函数,而不是在构造函数中绑定(bind)

标签 javascript reactjs ecmascript-6

我总是执行以下操作来绑定(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/

相关文章:

javascript - 如何使用character_limiter或word_limiter

asp.net - setTimeout 上的图像加载问题

javascript - 从另一个组件打开模态点击 react js

javascript - React.js 中的粘性侧边栏

javascript - 将元素从一个对象添加/合并到数组内的另一个对象

javascript - 如何在 Rails 的主要内容之间显示一些内容或消息

javascript - 如何在laravel中使用jquery ajax中的formData上传文件

javascript - React 应用程序检测用户是否刷新窗口或导航离开

javascript - 如何从 ES6 类中的 getter 函数返回构造函数参数值

javascript - 基于表达式的解构对象