ici, vous apprendrez à exposer différents types en tant que module à l’aide de module.exportation.
module.exports
est un objet spécial qui est inclus dans chaque fichier JavaScript du nœud.application js par défaut. Le module
est une variable qui représente le module actuel, et exports
est un objet qui sera exposé en tant que module. Ainsi, tout ce que vous attribuez à module.exports
sera exposé en tant que module.,
voyons comment exposer différents types en tant que module en utilisantmodule.exports
.
Exporter les Littéraux
Comme mentionné ci-dessus, exports
est un objet. Il expose donc tout ce que vous lui avez attribué en tant que module. Par exemple, si vous attribuez un littéral de chaîne, il exposera ce littéral de chaîne en tant que module.
L’exemple suivant expose un message de chaîne simple en tant que module dans Message.js.
Copier
module.exports = 'Hello world';
Maintenant, importez ce message module et de l’utiliser comme indiqué ci-dessous.
Copier
var msg = require('./Messages.js');console.log(msg);
Exécuter l’exemple ci-dessus et de voir le résultat, comme illustré ci-dessous.
C:\ > application de nœud.js
Hello World
./
comme chemin du dossier racine pour importer un module local. Cependant, vous n’avez pas besoin de spécifier le chemin d’accès au nœud d’importation.,modules de base js ou modules NPM dans la fonction require()
.Exportation d’Objet
Le exports
est un objet. Vous pouvez donc y attacher des propriétés ou des méthodes. L’exemple suivant expose un objet avec une propriété string dans le fichierMessage.js
.
Copier
exports.SimpleMessage = 'Hello world';//ormodule.exports.SimpleMessage = 'Hello world';
Dans l’exemple ci-dessus, nous avons attaché une propriété SimpleMessage
pour les exportations de l’objet. Maintenant, importez et utilisez ce module, comme indiqué ci-dessous.
Copier
var msg = require('./Messages.js');console.log(msg.SimpleMessage);
Dans l’exemple ci-dessus, la balise require()
fonction retournera un objet { SimpleMessage : 'Hello World'}
et l’affecter à la variable msg. Alors, maintenant, vous pouvez utiliser msg.SimpleMessage
.
Exécuter l’exemple ci-dessus en écrivant node app.js
dans l’invite de commande et voir le résultat comme indiqué ci-dessous.
C:\ > application de nœud.js
Hello World
de la même manière que ci-dessus, vous pouvez exposer un objet avec une fonction., L’exemple suivant expose un objet avec la fonction log
en tant que module.
Copier
module.exports.log = function (msg) { console.log(msg);};
ci-dessus module permettra d’exposer un objet- { log : function(msg){ console.log(msg); } }
. Utilisez le module comme indiqué ci-dessous.
Copier
var msg = require('./Log.js');msg.log('Hello World');
Exécuter et voir le résultat dans l’invite de commande comme indiqué ci-dessous.
C:\ > application de nœud.,js
Hello World
Vous pouvez également joindre un objet à module.exports
, comme indiqué ci-dessous.
Copier
module.exports = { firstName: 'James', lastName: 'Bond'}
Copier
var person = require('./data.js');console.log(person.firstName + ' ' + person.lastName);
Exécuter l’exemple ci-dessus et de voir le résultat, comme illustré ci-dessous.
C:\ > application de nœud.js
James Bond
la Fonction d’Exportation
Vous pouvez joindre une fonction anonyme pour les exportations de l’objet comme indiqué ci-dessous.,
Copier
module.exports = function (msg) { console.log(msg);};
Maintenant, vous pouvez utiliser le haut module, comme indiqué ci-dessous.
Copier
var msg = require('./Log.js');msg('Hello World');
Le msg
variable devient une expression de fonction dans l’exemple ci-dessus. Ainsi, vous pouvez appeler la fonction en utilisant la parenthèse ()
. Exécutez l’exemple ci-dessus et voyez la sortie comme indiqué ci-dessous.
C:\ > application de nœud.,js
Hello World
exporter la fonction en tant que Classe
en JavaScript, une fonction peut être traitée comme une classe. L’exemple suivant présente une fonction qui peut être utilisée comme une classe.
ci-dessus module peut être utilisé, comme indiqué ci-dessous.
Copier
var person = require('./Person.js');var person1 = new person('James', 'Bond');console.log(person1.fullName());
Comme vous pouvez le voir, nous avons créé un person
objet à l’aide de la balise new
mot clé. Exécutez l’exemple ci-dessus, comme indiqué ci-dessous.
C:\ > application de nœud.,js
James Bond
de cette façon, vous pouvez exporter et importer un module Local créé dans un fichier séparé sous le dossier racine.
nœud.js vous permet également de créer des modules dans des sous-dossiers. Voyons comment charger le module à partir de sous-dossiers.
charger le Module à partir du dossier séparé
utilisez le chemin complet d’un fichier de module où vous l’avez exporté en utilisantmodule.exports
. Par exemple, si le module de journal dans le journal.js est stocké dans le dossierutility
sous le dossier racine de votre application, puis importez-le, comme indiqué ci-dessous.
Copier
var log = require('./utility/log.js');
Dans l’exemple ci-dessus, .
est le dossier racine, puis spécifiez le chemin d’accès exact de votre fichier de module. Nœud.js nous permet également de spécifier le chemin d’accès au dossier sans spécifier le nom de fichier. Par exemple, vous pouvez spécifier uniquement le dossier utilitaire sans spécifier log.js
, comme illustré ci-dessous.
Copier
var log = require('./utility');
Dans l’exemple ci-dessus, le Nœud.,js recherchera un fichier de définition de package appelé package.json
dans le dossier utilitaire. En effet, Node suppose que ce dossier est un paquet et essaiera de rechercher une définition de paquet.Le fichierpackage.json
doit se trouver dans un répertoire de module. La package.json
sous le dossier utilitaire spécifie le nom du fichier à l’aide de la clé main
, comme indiqué ci-dessous.
Copier
{ "name" : "log", "main" : "./log.js"}
Maintenant, Nœud.,js trouverez la balise log.js
le fichier à l’aide de la balise main
entrée package.json
et l’importer.
package.json
le fichier n’existe pas, alors il va chercher de l’index.fichier js en tant que fichier de module par défaut.