J'utilise actuellement ES6 dans une application React via webpack / babel. J'utilise des fichiers d'index pour rassembler tous les composants d'un module et les exporter. Malheureusement, cela ressemble à ceci:
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_;
Je peux donc bien l'importer depuis d'autres endroits comme celui-ci:
import { Comp1, Comp2, Comp3 } from './components';
Évidemment, ce n'est pas une très bonne solution, alors je me demandais s'il y avait une autre façon. Je ne semble pas en mesure d'exporter directement le composant importé.
javascript
ecmascript-6
webpack
babeljs
MoeSattler
la source
la source
Réponses:
Vous pouvez facilement réexporter l'importation par défaut:
Il existe également une proposition pour
ES7ES8 qui vous permettra d'écrireexport Comp1 from '…';
.la source
Gardez également à l'esprit que si vous devez exporter plusieurs fonctions à la fois, comme les actions que vous pouvez utiliser
la source
SyntaxError: Unexpected reserved word
, la réponse acceptée de @ Bergi fonctionne.Trop tard mais je veux partager la façon dont je le résous.
Ayant un
model
fichier qui a deux exportations nommées:et ayant un
controller
fichier qui a l'exportation par défaut:J'ai exposé dans le
index
fichier de cette façon:et en supposant que je veux tous les importer:
la source
Simplement:
Ou par nom de fonction:
Plus d'infos: https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Statements/export
la source
Installer
@babel/plugin-proposal-export-default-from
via:yarn add -D @babel/plugin-proposal-export-default-from
Dans votre
.babelrc.json
ou l'un des types de fichiers de configurationVous pouvez désormais
export
directement depuisfile-path
:Bonne chance...
la source