React Native:创建组件错误

时间:2016-02-20 19:55:00

标签: javascript android mobile reactjs react-native

我正在尝试创建一个react本机组件,基本上只是通过组件重新呈现默认屏幕。但是我收到了一个错误:

Cant find variable: Component

Login.js:

    'use strict';
    var React = require('react-native');
    var {
      AppRegistry,
      Component,
      StyleSheet,
      Text,
      View
    } = React;

    var SearchScreen = React.createClass({

      getInitialState: function() {
        return {
        };
      },
      render: function() {
        return (
          <View style={styles.container}>
            <Text style={styles.welcome}>
              Welcome to React Native!
            </Text>
            <Text style={styles.instructions}>
              To get started, edit index.android.js
            </Text>
            <Text style={styles.instructions}>
              Shake or press menu button for dev menu
            </Text>
          </View>
        );
    }
    });


    const styles = StyleSheet.create({
      container: {
        flex: 1,
        justifyContent: 'center',
        alignItems: 'center',
        backgroundColor: '#F5FCFF',
      },
      welcome: {
        fontSize: 20,
        textAlign: 'center',
        margin: 10,
      },
      instructions: {
        textAlign: 'center',
        color: '#333333',
        marginBottom: 5,
      },
    });

module.exports = Login;

index.android.js:

/**
 * Sample React Native App
 * https://github.com/facebook/react-native
 */
'use strict';
var React = require('react-native');
var {
  AppRegistry
} = React;

var Login = require('./Login');

class theUI extends Component {
  render() {
    return (
      <Login />
    );
  }
}

AppRegistry.registerComponent('theUI', () => theUI );

无法找到的组件是<Login />

我看过官方回购中的电影示例,以及其他一些例子,我看不出我做错了什么/不同。

我在Windows 10上,index.android.js和login.js都在根目录中(在子目录中都没有)。

1 个答案:

答案 0 :(得分:3)

您忘记在React中包含Component类。

var {
  AppRegistry,
  Component,
} = React;

OR

class fortysevenui extends React.Component {