Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/390.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript SyntaxError:';超级';这里出现了意外的关键字_Javascript_Reactjs - Fatal编程技术网

Javascript SyntaxError:';超级';这里出现了意外的关键字

Javascript SyntaxError:';超级';这里出现了意外的关键字,javascript,reactjs,Javascript,Reactjs,当我运行此程序时,它会给我一个错误: 未捕获的语法错误:“super”关键字此处意外 var React=require(“React”); module.exports=React.createClass({ 构造函数(){ 超级(); this.state={date:new date()}; }, render(){ 返回( 测试 ); } }); 另外,我删除了super()它给了我一个错误 您多次尝试在组件上定义构造函数。此冲突可能是由混入引起的 例子来自 我做错了什么?如果您没有使

当我运行此程序时,它会给我一个错误:

未捕获的语法错误:“super”关键字此处意外

var React=require(“React”);
module.exports=React.createClass({
构造函数(){
超级();
this.state={date:new date()};
},
render(){
返回(
测试
);
}
});
另外,我删除了
super()
它给了我一个错误

您多次尝试在组件上定义
构造函数。此冲突可能是由混入引起的

例子来自


我做错了什么?

如果您没有使用ES6类,而是使用
React.createClass()
语法,请通过
getInitialState()
设置初始状态,而不是通过构造函数:

var Counter = React.createClass({
  getInitialState: function() {
    return {count: this.props.initialCount};
  },
  // ...
});



也就是说,最好改用ES6课程。通过这种方式,您可以使用文档中的构造函数语法。

您使用的是
React.createClass
。如果要使用
constructor()
,必须将语法切换到ES6类定义,就像文档一样。在您的情况下:
module.exports=class MyComponent扩展了React.Component{
super
仅用于ES6
class
es,不用于
React.createClass
@mrlew谢谢,它解决了我的问题
var Counter = React.createClass({
  getInitialState: function() {
    return {count: this.props.initialCount};
  },
  // ...
});