javascript - La valeur de sortie du module ES6 Loading Export est un peu floue
淡淡烟草味
淡淡烟草味 2017-07-05 10:53:10
0
3
877


Pourquoi cette erreur est-elle signalée ?


Pourquoi est-ce que ça va ? Quelle est la fonction de ces accolades ? Est-ce la syntaxe ?

淡淡烟草味
淡淡烟草味

répondre à tous(3)
刘奇

Avant la sortie de la norme es6, tout ce qui était exporté était ce qui était requis.

Prenons nodejs comme exemple

// ./fk.js
export 'fk';

// ./main.js
var fk = require('./fk');
console.log(fk); // output "fk"

Écoutez, ce n'est pas du tout "modulaire". Puisque le module est importé, il devrait avoir des valeurs, des fonctions, des voitures, des ânes et des hot pots.

Que faire ?
L'étiquette stipule que tout contenu exporté doit avoir un "nom". Vous pouvez également lui donner un alias, mais il doit quand même avoir un nom !

La première façon de choisir un nom

export var/let/const 名字=值

Deuxième méthode de dénomination

var/let/const 变量=值
export {变量} 或 export {变量 as 别名}

La troisième façon de choisir un nom

export default 值

La raison pour laquelle la deuxième méthode de la première image signale une erreur est que vous n'avez pas besoin de la mettre entre accolades lors de la compilation, mJe ne sais pas comment elle s'appelle. est appelé, vous n'avez pas de nom. Si vous ne parvenez pas à trouver un nom, vous ne pouvez pas exporter.

Fin.

typecho

Voir l'export de la documentation sur MDN

Il n'y a que quelques formulaires au total

export { name1, name2, …, nameN };
export { variable1 as name1, variable2 as name2, …, nameN };
export let name1, name2, …, nameN; // also var
export let name1 = …, name2 = …, …, nameN; // also var, const

export default expression;
export default function (…) { … } // also class, function*
export default function name1(…) { … } // also class, function*
export { name1 as default, … };

export * from …;
export { name1, name2, …, nameN } from …;
export { import1 as name1, import2 as name2, …, nameN } from …;

Les deux formulaires que vous avez rédigés ne sont pas inclus... Pour la signification spécifique de chaque formulaire, veuillez lire le document !

给我你的怀抱

https://developer.mozilla.org...

Pour ce genre de problème, il suffit de lire directement le document. Et n'avez-vous pas pris cette photo de l'article de Ruan Yifeng ? Le texte original contient des instructions claires

Il est important de noter que la commande export spécifie l'interface externe et doit établir une correspondance biunivoque avec les variables à l'intérieur du module.

Les deux méthodes d'écriture ci-dessus signaleront des erreurs car aucune interface externe n'est fournie. La première façon d'écrire directement en sortie 1, et la deuxième façon d'écrire directement en sortie 1 via la variable m 1 n'est qu'une valeur, pas une interface.

Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal