Ich verwende derzeit ES6 in einer React-App über Webpack / Babel. Ich verwende Indexdateien, um alle Komponenten eines Moduls zu sammeln und zu exportieren. Das sieht leider so aus:
import Comp1_ from './Comp1.jsx';
import Comp2_ from './Comp2.jsx';
import Comp3_ from './Comp3.jsx';
export const Comp1 = Comp1_;
export const Comp2 = Comp2_;
export const Comp3 = Comp3_;
So kann ich es schön von anderen Orten wie diesem importieren:
import { Comp1, Comp2, Comp3 } from './components';
Offensichtlich ist das keine sehr schöne Lösung, also habe ich mich gefragt, ob es einen anderen Weg gibt. Ich kann die importierte Komponente anscheinend nicht direkt exportieren.
javascript
ecmascript-6
webpack
babeljs
MoeSattler
quelle
quelle
Antworten:
Sie können den Standardimport problemlos erneut exportieren:
Es gibt auch einen Vorschlag für
ES7ES8 , mit dem Sie schreiben könnenexport Comp1 from '…';
.quelle
Denken Sie auch daran, dass Sie mehrere Funktionen gleichzeitig exportieren müssen, z. B. Aktionen, die Sie verwenden können
quelle
SyntaxError: Unexpected reserved word
Hol mir ein (ziemlich irreführend ... hat einen Moment gedauert ) , @ Bergis akzeptierte Antwort funktioniert.Zu spät, aber ich möchte mitteilen, wie ich es löse.
Eine
model
Datei mit zwei benannten Exporten haben:und mit einer
controller
Datei, die den Standardexport hat:Ich habe die
index
Datei folgendermaßen belichtet :und unter der Annahme, dass ich alle importieren möchte:
quelle
Einfach:
Oder nach Funktionsnamen:
Weitere Informationen: https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Statements/export
quelle
Installation
@babel/plugin-proposal-export-default-from
über:yarn add -D @babel/plugin-proposal-export-default-from
In Ihrem
.babelrc.json
oder einem der KonfigurationsdateitypenJetzt können Sie
export
direkt von einemfile-path
:Viel Glück...
quelle