2017-05-01 4 views
6

Ich bin neu zu reagieren. Anfangs habe ich angefangen, create-react-app zu verwenden. Die Dateinamen waren standardmäßig index.js. Dann habe ich die Datei in index.jsx umbenannt.React File Benennungskonvention zu JSX

Wenn ich versuche, die Anwendung mit npm start zu starten, erhalte ich den folgenden Fehler.

> react-scripts start 

Could not find a required file. 
    Name: index.js 
    Searched in: D:\WorkSpace\React\chat\src 

npm ERR! Windows_NT 6.1.7601 
npm ERR! argv "D:\\Applns\\nodejs\\node.exe" "D:\\Applns\\nodejs\\node_modules\\ 
npm\\bin\\npm-cli.js" "start" 
npm ERR! node v6.10.0 
npm ERR! npm v3.10.10 
npm ERR! code ELIFECYCLE 
npm ERR! [email protected] start: `react-scripts start` 
npm ERR! Exit status 1 
npm ERR! 
npm ERR! Failed at the [email protected] start script 'react-scripts start'. 
npm ERR! Make sure you have the latest version of node.js and npm installed. 
npm ERR! If you do, this is most likely a problem with the chat package, 
npm ERR! not with npm itself. 
npm ERR! Tell the author that this fails on your system: 

So lösen Sie das Problem. Wie kann ich Knoten machen, um die jsx-Datei zu nehmen.

Antwort

0

Eine Datei mit dieser Erweiterung wird von einer anderen Datei importiert. Die Erweiterung wurde geändert, sodass die Suche fehlschlägt. Außerdem benötigt React nicht, dass die Dateien .jsx funktionieren. Also einfach durch einfaches Umschalten der Dateierweiterung sollte funktionieren. Ich habe nie create-react-app verwendet, aber wenn Sie es mit .jsx arbeiten wollen, müssen Sie wahrscheinlich einige zusätzliche Konfiguration über seine Standardkonfiguration tun. Ich würde die Dokumente dafür überprüfen.

+0

ReactJS Komponenten muss in .jsx Dateien richtig? als Standard? –

+0

Es ist keine Voraussetzung, aber einige Leute bevorzugen es. Andere machen das Argument, dass die 'jsx'-Umwandlung nur eine der Transformationen ist, die in der Datei auftreten, um es zu einem gültigen Javascript zu machen, das in einem Browser ausgeführt werden kann, und daher macht es keinen Sinn, die Datei deswegen anders zu benennen. Ich persönlich habe keine starken Gefühle, aber normalerweise gehe ich nur mit ".js" -Dateien, so dass ich sie später nicht ändern muss, wenn eine "jsx" -Syntax hinzugefügt werden muss. –

0

Umbenennungs index.js statt index.jsx es properply funktioniert, wie ich verwende create-EACT-App

+0

ReactJS Komponenten müssen in .jsx Dateien richtig sein? als Standard? –

+0

keine Notwendigkeit, wenn Sie create-react-app verwenden –

0

Wie @KeithA erwähnt - Sie zusätzliche Konfiguration benötigen. In webpack.config.js Sie im resolve Objekt:

resolve: { 
///...some other configurations will go here ... 

    extensions: [ "", ".js", ".jsx" ] 
},