2017-11-27 4 views
0

反応するネイティブアプリケーションでナビゲーションを使用しようとしていますが、エラーが発生しています。要素タイプが無効です:文字列(組み込みコンポーネント用)またはクラス/関数(複合コンポーネント用)が必要です

ここ

は私のindex.jsファイルです:

import React, { Component } from 'react' 
import { AppRegistry } from 'react-native'; 
import App from './App'; 

class ChatNow extends Component { 
    render() { 
     return (
      <App /> 
     ) 
    } 
} 

AppRegistry.registerComponent('ChatNow',() => App); 

私は次のエラーを取得する:

Invariant Violation: Element type is invalid: expected a string (for built-in components) or a class/function (for composite components) but got: object 

私もクラスをコメントアウトし、ちょうどそれをベースindex.js方法を実行してみましたファイルが作成されたときだったが、私は同じエラーが発生します。

この場合、app.jsファイルは、ネイティブからは廃止されましたが、 'react-native-deprecated-custom-components'で再実装されたNavigatorコンポーネントを実装するように設計されています。

import React, { Component } from 'react'; 
import { 
    Platform, 
    StyleSheet, 
    Text, 
    View, 
    TouchableOpacity 
} from 'react-native'; 
import Navigator from 'react-native-deprecated-custom-components'; 

import MainScreen from './components/mainScreen' 
import SignInScreen from './components/signInScreen'; 

export default class App extends Component { 
    _renderScene(route, navigator) { 
    switch(route.name) { 
     case 'SignInScreen': 
     return <SignInScreen /> 
     case 'MainScreen': 
     return <MainScreen /> 
    } 
    } 

    render() { 
    return(
     <Navigator 
     initialRoute={{name: 'MainScreen', title: 'Welcome'}} 
     renderScene={this._renderScene} 
     style={styles.container} 
     sceneStyle={styles.sceneContainer} 
     /> 
    ) 
    } 
} 

答えて

0

こんにちは、私は問題はあなたはそれがChatNowする必要があります代わりにAPPの、AppRegistry.registerComponentにトップレベルの成分を通過されていないことであると考えていますが、方法:ここで

は私app.jsコードです私はコメントを残してみましたが、私はenought担当者を持っていけない、

import { AppRegistry } from 'react-native'; 
import App from './App'; 

AppRegistry.registerComponent('ChatNow',() => App); 

私はそれが役に立てば幸い:ChatNowは何もしていない場合、私は個人的にあなたはそれを取り除くと、これを行うことができ、それを使用しました。

+0

あなたが言ったように、他の反応ネイティブアプリが機能しているのを見ました。そのため、先に進み、そのクラスをコメントアウトしましたが、エラーは依然として残ります。 –

0

さて、それは非常識なものだった...

は、問題を引き起こしたコードの行が判明した:

import Navigator from 'react-native-deprecated-custom-components'; 

それはされている必要があります。

import { Navigator } from 'react-native-deprecated-custom-components'; 

おっとっと。

関連する問題

 関連する問題