Sto scrivendo questo post perché (suppongo di essere stanco) non ho capito bene né MDN, né la descrizione di altre persone e il modo migliore per capire qualcosa è insegnarlo ad altre persone. È solo che non vedo una semplice risposta alla domanda.
Che cos'è "export default" in javascript?
Nell'esportazione predefinita la denominazione dell'importazione è completamente indipendente e possiamo usare qualsiasi nome che ci piace.
Illustrerò questa riga con un semplice esempio.
Diciamo che abbiamo 3 moduli e un index.html:
- modul.js
- modul2.js
- modul3.js
- index.html
modul.js
export function hello() {
console.log("Modul: Saying hello!");
}
export let variable = 123;
modul2.js
export function hello2() {
console.log("Module2: Saying hello for the second time!");
}
export let variable2 = 456;
modul3.js
export default function hello3() {
console.log("Module3: Saying hello for the third time!");
}
index.html
<script type="module">
import * as mod from './modul.js';
import {hello2, variable2} from './modul2.js';
import blabla from './modul3.js'; //! Here is the important stuff - we name the variable for the module as we like
mod.hello();
console.log("Module: " + mod.variable);
hello2();
console.log("Module2: " + variable2);
blabla();
</script>
L'output è:
modul.js:2:10 -> Modul: Saying hello!
index.html:7:9 -> Module: 123
modul2.js:2:10 -> Module2: Saying hello for the second time!
index.html:10:9 -> Module2: 456
modul3.js:2:10 -> Module3: Saying hello for the third time!
Quindi la spiegazione più lunga è :
'export default' viene usato se si desidera esportare una singola cosa per un modulo.
Quindi la cosa importante è "import blabla da './modul3.js'" - potremmo invece dire:
"import pamelanderson da './modul3.js" e quindi pamelanderson (); Funzionerà perfettamente quando usiamo "export default" e sostanzialmente è così - ci permette di nominarlo come preferiamo quando è default .
Ps Se vuoi provare l'esempio - crea prima i file, quindi consenti CORS nel browser -> se stai usando il tipo firefox nell'URL del browser: about: config -> Cerca "privacy.file_unique_origin" -> cambia su "false" -> apri index.html -> premi F12 per aprire la console e vedere l'output -> Divertiti e non dimenticare di ripristinare le impostazioni cors predefinite.
Ps2 Ci scusiamo per la stupida denominazione delle variabili
Maggiori informazioni @
link2medium , link2mdn1 , link2mdn2