10. ES6-Module

Mit ES6-Modulen können Sie JavaScript-Anwendungen erstellen, die in unabhängige, wiederverwendbare Module gegliedert sind.
10.1. Skripte [import-01, export-01]
Das Skript [import-01] verwendet das Modul [export-01]. Dies ist wie folgt definiert:
// export par défaut d'un objet non nommé
export default {
data: 2,
do() {
console.log(this.data);
}
};
Kommentare
- Die Zeilen [2–7] definieren ein unbenanntes Objekt mit den Eigenschaften [data, do];
- Zeile 2: Die Anweisung [export default] exportiert dieses Objekt. Es kann daher importiert werden;
Das Modul [export-01] wird vom Skript [import-01] wie folgt verwendet:
'use strict';
// import d'un objet exporté par défaut
import export01 from './export-01';
// utilisation de cet objet
export01.do();
// on peut importer un export par défaut sous n'importe quel nom
import data from './export-01';
console.log(data.data);
Kommentare
- In den Zeilen 3 und 7 wird das standardmäßig exportierte Objekt aus dem Modul [export-01] unter zwei verschiedenen Namen importiert;
- Sobald ein Objekt importiert wurde, kann es so verwendet werden, als wäre es lokal im Skript definiert worden;
Ausführung
[Running] C:\myprograms\laragon-lite\bin\nodejs\node-v10\node.exe -r esm "c:\Data\st-2019\dev\es6\javascript\modules\import-01.js"
2
2
10.2. Skripte [import-02, export-02]
Diese Skripte veranschaulichen den Export eines benannten Objekts.
Das Skript [export-02] lautet wie folgt:
// export par défaut d'un objet nommé
const data = {
data: 2,
do() {
console.log(this.data);
}
};
// export
export default data;
- Zeile 9: Wir exportieren das [data]-Objekt;
Ob das exportierte Objekt einen Namen hat oder nicht, hat keinen Einfluss auf den Importvorgang. Das Skript [import-02] lautet wie folgt:
'use strict';
// import d'un objet exporté par défaut
import module1 from './export-02';
// utilisation de cet objet
module1.do();
// on peut importer un export par défaut sous n'importe quel nom
import module2 from './export-02';
console.log(module2.data);
Ausführung
[Running] C:\myprograms\laragon-lite\bin\nodejs\node-v10\node.exe -r esm "c:\Data\st-2019\dev\es6\javascript\modules\import-02.js"
2
2
10.3. Skripte [import-03, export-03]
Ein Modul kann mehrere Elemente exportieren.
Das Skript [export-03] lautet wie folgt:
// multi-exports
// object export
const data = {
data: 2,
do() {
console.log(this.data);
}
};
// export function
export { data };
function doSomething() {
console.log("doSomething");
}
export { doSomething };
Kommentare
- Zeilen 10 und 14: Exportieren von zwei Elementen. Ein Element wird mit der Syntax [export {element}] exportiert;
Das Skript [import-03] verwendet das Modul [export-03] wie folgt:
'use strict';
// import d'un module [export03]
import {data, doSomething} from './export-03';
// utilisation des imports
data.do();
doSomething();
// autre écriture
import * as module from './export-03';
// utilisation de l'import
console.log(module.data);
module.doSomething();
- Zeile 3: [Importe] erfolgen unter Verwendung der genauen Namen der exportierten Objekte;
- Zeile 8: Sie können alle exportierten Objekte in ein benanntes Objekt (hier [module]) importieren;
Ausführung
[Running] C:\myprograms\laragon-lite\bin\nodejs\node-v10\node.exe -r esm "c:\Data\st-2019\dev\es6\javascript\modules\import-03.js"
2
doSomething
{ data: 2, do: [Function: do] }
doSomething