当我运行这个时,它给了我一个错误:
未捕获的语法错误:"超级"关键字在这里出乎意料
var React = require("react");
module.exports = React.createClass({
constructor(){
super();
this.state = {date: new Date()};
},
render() {
return(
<div>
test
</div>
);
}
});
附言。我删除了super()
它给了我一个错误
您正在尝试多次定义组件上的
constructor
。这种冲突可能是由于混合造成的。
示例来自 React Docs
我做错了什么?
如果您使用的不是 ES6 类,而是使用 React.createClass()
语法,请通过 getInitialState()
而不是通过构造函数设置初始状态:
var Counter = React.createClass({
getInitialState: function() {
return {count: this.props.initialCount};
},
// ...
});
更多信息在 React 文档中
也就是说,最佳做法是切换到 ES6 类。这样,您就可以使用文档中的构造函数语法。