Maison > interface Web > js tutoriel > Comment exporter des modules dans Node.js : « module.exports » vs « exports » ?

Comment exporter des modules dans Node.js : « module.exports » vs « exports » ?

Linda Hamilton
Libérer: 2024-11-18 01:22:02
original
555 Les gens l'ont consulté

How to Export Modules in Node.js:  `module.exports` vs `exports`?

Exportation de modules dans Node.js : module.exports vs exports

Les modules Node.js facilitent la réutilisation et l'organisation du code en permettant le partage de fonctions et données dans différents modules. Au cœur de l'exportation de modules se trouvent deux termes clés : module.exports et exports.

Que sont module.exports et exports ?

  • module.exports : Un objet fourni par Node.js au module ; lui attribuer une valeur définit l'interface exportée du module.
  • exports : Un alias vers module.exports ; les modifications apportées aux exportations sont reflétées dans module.exports.

Pourquoi utiliser les deux ?

Dans l'exemple fourni, module.exports et exports sont utilisés pour maintenir la compatibilité ascendante.

Par défaut, module.exports pointe vers un objet vide. Le code :

exports = nano = function database_module(cfg) {...}
Copier après la connexion

ajoute une fonction nano aux exports et attribue la référence à module.exports. Cela permet aux développeurs d'exporter une fonction en l'attribuant aux exportations, comme dans :

exports.someFunction = function() {...}
Copier après la connexion

Cependant, cette pratique peut entraîner des problèmes lorsque plusieurs fonctions sont exportées sur une seule ligne :

exports.a = function() {
    console.log("a");
}
exports.b = function() {
    console.log("b");
}
Copier après la connexion

Dans cette situation, l'objet exports est réaffecté, provoquant une rupture nette entre module.exports et exports. Pour éviter cela, la référence à module.exports est explicitement attribuée.

Bonnes pratiques

  • Pour exporter plusieurs valeurs, utilisez module.exports.
  • Pour exporter une seule valeur, utilisez module.exports ou exports.
  • Assurez-vous que les exportations sont traitées comme une référence à module.exports.

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

source:php.cn
Déclaration de ce site Web
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn
Derniers articles par auteur
Tutoriels populaires
Plus>
Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal