Javascript 关于在react中使用ES6类
我有一些关于在react中使用ES6类的问题 问题如下 关于在react中创建组件 我用这种方式Javascript 关于在react中使用ES6类,javascript,reactjs,class,ecmascript-6,Javascript,Reactjs,Class,Ecmascript 6,我有一些关于在react中使用ES6类的问题 问题如下 关于在react中创建组件 我用这种方式 class A extends Component{ constructor(){ this.state = { 'blah' : 123 } } } 但我看到了另一种方式 class A extends Component{ state = { 'blah' : 123 } } 问题
class A extends Component{
constructor(){
this.state = {
'blah' : 123
}
}
}
但我看到了另一种方式
class A extends Component{
state = {
'blah' : 123
}
}
问题1)
第一种方式和第二种方式的区别是什么
问题2)
在我建造的环境中
第二种方法生成一个错误
如何使用第二种方式?(直接定义状态)问题1:第一种和第二种方法没有区别,都可以用来初始化状态 问题2:您可以在react版本16或更高版本中使用第二种方法。旧版本不支持它。对于旧版本,您仍然需要使用方法1,即构造函数方法
我希望这对你有帮助。它们是等效的。第二个是目前关于用这种语法扩展语言的建议。您需要配置生成工具以理解此语法。请检查此语法完全独立于您使用的React版本。这与React无关。@FelixKling好的,那么是什么造成了与Babel或其他任何东西不同呢?是的,这个Babel插件负责执行转换:非常感谢!!这些答案对我很有帮助