Ich habe mit gearbeitet create-react-app
und bin auf dieses Problem gestoßen, wo ich es bekomme Home does not contain an export named Home
.
So richte ich meine App.js
Datei ein:
import React, { Component } from 'react';
import logo from './logo.svg';
import './App.css';
import { Home } from './layouts/Home'
class App extends Component {
render() {
return (
<div className="App">
Hello
<Home />
</div>
)
}
}
export default App;
Jetzt habe layouts
ich in meinem Ordner die Home.js
Datei. Das ist wie folgt eingerichtet.
import React, { Component } from 'react';
class Home extends Component{
render(){
return(
<p className="App-intro">
Hello Man
</p>
)
}
}
export default Home;
Wie Sie sehen, exportiere ich die Home
Komponente, erhalte jedoch eine Fehlermeldung in meiner Konsole, die dies besagt.
Was ist los?
Verwenden
eher, als
{}
Von zu Hause entfernenquelle
Dies ist ein Fall, in dem Sie Standardexporte und benannte Exporte verwechselt haben.
Wenn
named
Sie versuchen, die Exporte zu importieren, sollten Sie geschweifte Klammern wie folgt verwenden:In Ihrem Fall wurde das Home standardmäßig exportiert. Dies ist derjenige, der aus dem Modul importiert wird, wenn Sie keinen bestimmten Namen eines bestimmten Codeteils angeben. Wenn Sie importieren und die geschweiften Klammern weglassen, wird in dem Modul, aus dem Sie importieren, nach dem Standardexport gesucht. Ihr Import sollte also sein,
Einige Hinweise zum Anschauen:
quelle
Ich bin gerade auf diese Fehlermeldung gestoßen (nach dem Upgrade auf nextjs 9 haben einige transpilierte Importe diesen Fehler gemeldet). Ich habe es geschafft, sie mit folgender Syntax zu reparieren:
quelle
Wir können auch verwenden
Verwenden des Schlüsselworts export vor dem Schlüsselwort class.
Standardmäßig
Standardexportklasse
Beide Fälle müssen nicht geschrieben werden
nach dem Unterricht.
quelle
Sie können dieses Problem auf zwei Arten lösen. Die erste Möglichkeit, die ich für die beste halte, besteht darin, das Importieren eines Teils Ihres Codes durch die folgende zu ersetzen:
oder exportieren Sie Ihre Komponente ohne Standard, was so genannter Export heißt
quelle
Das ist die Lösung:
quelle