Javascript 无法在React组件的let/var中存储箭头函数
我在react中有一个由extends react.component定义的组件。其内部以及渲染方法是:Javascript 无法在React组件的let/var中存储箭头函数,javascript,reactjs,ecmascript-6,jsx,babeljs,Javascript,Reactjs,Ecmascript 6,Jsx,Babeljs,我在react中有一个由extends react.component定义的组件。其内部以及渲染方法是: constructor(props, context) { super(props, context); this.state = { open: false, }; } handleClose = () => { //this works this.setState({open: false}); }; handleOpen =
constructor(props, context) {
super(props, context);
this.state = {
open: false,
};
}
handleClose = () => { //this works
this.setState({open: false});
};
handleOpen = () => { //this works
this.setState({open: true});
};
let empty = () => {}; // does not work, error Parsing error: Unexpected token
如果使用let或const作为任何箭头函数的前缀,我似乎会遇到意外的令牌错误。我是不是遗漏了什么
谢谢似乎只允许类定义主体中的方法
和静态方法
因此,在这种情况下,赋值语句是不允许的,因此babel出现了意外标记
错误。似乎只允许类定义主体中的方法
和静态方法
因此,在这种情况下,不允许使用赋值语句,因此babel出现了异常标记。阅读类。使用
let
或const
不是ES6类定义的可能前缀的一部分了解类。使用let
或const
不是ES6类定义的可能前缀的一部分您试图使用实验性ES7功能,并且可能只启用了ES6(也不能在类中使用let或const前缀)。如果您使用的是babel6,那么切换到正确的插件应该很简单。从基本相同的问题中可以看到这个答案:您试图使用实验性ES7功能,并且可能只启用了ES6(而且您不能在类中使用let或const前缀)。如果您使用的是babel6,那么切换到正确的插件应该很简单。从基本相同的问题中可以看到这个答案:您似乎正在利用。建议的语法是:
如您所见,没有
let
或const
或var
<代码>让空=()=>{}代码>不起作用,因为它不是有效的语法,正如错误消息告诉您的那样。您似乎正在使用。建议的语法是:
如您所见,没有let
或const
或var
<代码>让空=()=>{}不起作用,因为它不是有效的语法,就像错误消息告诉您的那样。“我在这里遗漏了什么吗?”它根本不是有效的语法。不知道你希望得到什么样的答案……“我在这里遗漏了什么吗?”这根本不是有效的语法。不知道你希望得到什么样的答案。。。
class ClassWithoutInits {
myProp;
}
class ClassWithInits {
myProp = 42;
}