警告:React.createElement:type不应为null,undefined,boolean或number

时间:2016-01-28 10:06:25

标签: javascript reactjs webpack babeljs

警告:React.createElement:type不应为null,undefined,boolean或number。它应该是一个字符串(对于DOM元素)或一个ReactClass(对于复合组件)。

我正在将一个反应页面放在一起,当我尝试使用es2015样式代码时遇到了上面的错误。当我使用以下代码时,我收到错误

var React = require('react');
export default class StoreApp extends React.Component {
  getInitialState() {
    return null;
  }

  render() {
    return (
      <div>
        <p>This should display on the screen</p>
      </div>
    );
  }
}

这很好......

var React = require('react');

var StoreApp = React.createClass({
  render: function() {
    return (
      <div>
        <p>This should display on the screen</p>
      </div>
    );
  }
});

module.exports = StoreApp;

我正在使用带有以下预设的babel ['react','es2015']这里有什么想法吗?

1 个答案:

答案 0 :(得分:1)

在es6中,您无法使用getInitialState()。使用constructor()

e.g。

constructor(props) {
  super(props);
  //Set your state here using this.state = {};
  //or leave blank if you don't want anything set in state
}

如果你没有把任何东西置于状态,你甚至可以把构造函数放在es6类中。