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 ?
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) {...}
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() {...}
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"); }
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
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!