Je ne peux pas croire que je pose une question évidente, mais j'obtiens toujours l'erreur dans le journal de la console.
La console dit qu'elle ne peut pas trouver le module dans le répertoire, mais j'ai vérifié au moins 10 fois les fautes de frappe. Quoi qu'il en soit, voici le code du composant.
Je veux rendre En-tête dans Racine
import React, { Component } from 'react'
import Header from './src/components/header/header'
import logo from './logo.svg'
import './App.css'
class App extends Component {
render() {
return (
<Header/>
);
}
}
export default App;
C'est le Header
composant
import React, { Component } from 'react'
import ReactDOM from 'react-dom'
import navBar from './src/components/header/navBar'
import './src/css/header.css'
class Header extends Component {
render() {
return {
<div>
<div id="particles-js"></div>
<navBar/>
<Title/>
</div>
};
}
}
ReactDOM.render(<Header/>, document.getElementById('header'));
J'ai vérifié au moins 10 fois que le module se trouve à cet endroit. ./src/components/header/header
et c'est le cas (le dossier "header" contient "header.js").
Pourtant, React jette toujours cette erreur :
Échec de la compilation
./src/App.js Module not found: Can't resolve './src/components/header/header' in '/home/wiseman/Desktop/React_Components/github-portfolio/src'
npm test dit la même chose.
2 votes
Ajouter
export default Header;
sur votre "fichier d'en-tête".2 votes
Ça ne marche toujours pas.
4 votes
Il semble que vous ayez besoin
import Header from './components/header/header'
sans src. Le chemin du fichier est relatif au chemin du fichier d'importation. Vous devez ensuite exporterHeader
deheader.js
et fixerApp.render
méthode.0 votes
Si je prends le
components
dossier extérieur desrc
puis il me dit que je dois modifier le dossiernode_modules
fichiers, ce qui n'est pas mon attention.11 votes
Vous n'avez pas besoin de déplacer quoi que ce soit. Vous avez un chemin relatif incorrect. Si vous importez à l'intérieur de './src/app.js', cela devrait être
import smth from './components/header/header'
Idem pour cette ligneimport navBar from './src/components/header/navBar'
il doit être relatif au chemin actuelimport navBar from './navBar'
0 votes
Ohhh, ça marche maintenant. Désolé pour mon ignorance. Merci Yury !
0 votes
Cela peut ou non être pertinent pour cette situation, mais faites également attention à la casse dans vos chemins de répertoire. J'ai eu une situation où mes répertoires locaux étaient en minuscules, mais dans prod ils étaient en majuscules. J'ai dû effacer complètement ma structure locale et cloner à partir de prod pour résoudre le problème, sinon j'allais passer beaucoup de temps à remanier les noms de répertoire.