it-swarm.com.de

Reagierunabhängige invariante Verletzung: Der Elementtyp ist ungültig

Wenn ich meine reaktive native App auf meiner iPhone Expo ausführe, wird dieser Fehler im roten Hintergrund angezeigt.

Invariante Verletzung: Der Elementtyp ist ungültig: Es wurde eine Zeichenfolge erwartet (für integrierte Komponenten) oder eine Klasse/Funktion (für zusammengesetzte Komponenten), aber got: object. Sie Hat wahrscheinlich vergessen, Ihre Komponente aus der Datei zu exportieren, in der sie definiert ist.

dies ist die App.js im Ordner 'src/components /'

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


export default class App extends Component {
  render() {
    return (
    	<View>
      		<Text>Hello</Text>
      	</View>
    );
  }
}

Dies ist das Hauptprogramm "App.js" im Ordner "Reactative App".

import App from './src/components/App';

Ich habe Expo-App zum Ausführen dieses Codes verwendet. Wie kann ich diesen Fehler beheben?

8

Expo erwartet, dass Sie eine Komponente aus /App.js exportieren. Im Moment importieren Sie jedoch nur in /App.js. Expo erhält keine Komponente zum Rendern. Sie müssen die importierte Komponente folgendermaßen exportieren:

export default App;

Nebenbei bemerkt: Verwenden Sie eine Klassenkomponente nur wenn Sie müssen.

5
THpubs

In meinem Fall statt so zu exportieren:

export default App;

... habe ich wie folgt exportiert: 

export {LoginForm};

Es hat ganz gut funktioniert.

4
Masood

Ich hatte diesen Fehler, weil ich meinen Export im folgenden Stil ohne Angabe eines Standardexports ausgeführt habe. Ich habe keine Standardeinstellung angegeben, da ich mehrere kleine Komponenten aus einer Datei exportiert habe.

export const  Modal  = (props) => (
    <div className="someClass">
    </div>        
  )

Ich konnte es zum Laufen bringen, indem ich der import-Anweisung eckige Klammern hinzufügte.

import {Modal} from '../components/Modal.js'
2
Greggory Wiley

ich hatte das gleiche Problem und ich setzte export default vor class yourclassname extends Component in App.js ein

1