警告:React.createElement:type不应为null

spl*_*unk 2 reactjs react-native

我正在使用reactJS创建我的第一个应用程序,但我一直收到此错误:

Warning: React.createElement: type should not be null, undefined, boolean, or number. It should be a string (for DOM element) or a ReactClass (for composite components). Check the render method of 'App'
Run Code Online (Sandbox Code Playgroud)

我已经阅读了十几个问题,但没有一个能帮助我解决这个问题.这是我的文件:

我的app.js文件:

import React, { Component } from 'react';
import { View, Text } from 'react-native';
import { Header } from './components/common';
import { ChooseLevel } from './components/ChooseLevel';

class App extends Component {

  renderContent() {
    <ChooseLevel/>
  }

  render() {
    return (
      <View>
        <Header headerText="my app" />
        {this.renderContent()}
      </View>
    );
  }
}

export default App;
Run Code Online (Sandbox Code Playgroud)

ChooseLevel.js:

import React, { Component } from 'react';
import { Text, View } from 'react-native';

class ChooseLevel extends Component {

  render() {
    var rows = [];

    for (var i=1; i <= 10; i++) {
        rows.push(
          <button style={styles.squareStyle}> 
            Level   
          </button>
        );
    }


    return (
      <div>
        {rows}
      </div>
    );
  }
}

const styles = {
  squareStyle: {
    flex:0.3,
    height:60
  }
};

export default ChooseLevel;
Run Code Online (Sandbox Code Playgroud)

Umu*_*acı 5

您正在进行默认导出:export default ChooseLevel;但导入其他内容:import { ChooseLevel } from './components/ChooseLevel';

import { ChooseLevel } from './components/ChooseLevel'; 大致转换为 const ChooseLevel = require('./components/ChooseLevel').ChooseLevel;

要导入您需要的默认导出值 import ChooseLevel from './components/Chooselevel';

看一下http://es6-features.org/#Constants,它详细解释了每个ES6功能.