Le Tutoriel de NodeJS Module
1. Qu'est-ce que NodeJS Module ?
En parlant simplement, le module NodeJS est une bibliothèque Javascript. C'est un ensemble de fonctions (function), d'objets et de variables que vous pouvez utiliser dans vos applications. L'utilisation Module permet de simplifier l'écriture de code et de le gérer dans votre application. Normalement, chaque module sera écrit dans un fichier séparé.
Le NodeJS intègre de nombreux Modules. Il a des bibliothèques standards pour que vous puissiez développer des applications. Voici la liste des modules :
Module | Description |
assert | ournit un ensemble des assertion tests (tests d'assertion) |
buffer | Pour gérer les données binaires (binary data). |
child_process | Pour exécuter un processus enfant (child process) |
cluster | Pour diviser un seul processus (process) Node en plusieurs processus |
crypto | Pour gérer les fonctions cryptographiques OpenSSL (OpenSSL cryptographic functions) |
dgram | Fournit l'implémentation de UDP sockets |
dns | Effectuer des recherches (lookups) et des fonctions de résolution (resolution) DNS |
events | Pour gérer les événements (events) |
fs | Pour gérer le système de fichiers |
http | Pour faire Node.js agir comme un HTTP server. |
https | Pour faire Node.js agir comme un HTTPS server. |
net | Pour créer des server et des client |
os | Fournit des informations sur le système d'exploitation |
path | Pour gérer des chemins de fichiers (file paths). |
querystring | Pour gérer les chaînes de requête de URL |
readline | Pour gérer les flux des données (data streams) lisibles une ligne (line) à la fois |
stream | Pour gérer les flux des données (streaming data) |
string_decoder | Décoder (decode) les objets du tampon (buffer objects) en chaînes |
timers | Pour exécuter une fonction Javascript après un nombre donné de temps |
tls | Pour implémenter des protocoles TLS & SSL. |
tty | Fournit des classes utilisées par text terminal. |
url | Pour analyser (parse) les chaînes de URL (URL strings) |
util | Pour accéder aux fonctions utilitaires (Utility functions). |
v8 | Pour accéder aux informations sur le moteur V8 JavaScript engine. |
vm | Pour compiler (compile) du code JavaScript dans la machine virtuelle (Virtual machine) |
zlib | Pour compresser ou décompresser des fichiers. |
Afin d'utiliser un module, utilisez la fonction require(moduleName). Par exemple, http est un module qui oblige NodeJS à fonctionner comme un HTTP Server.
Assurez- vous que vous avez créé un projet NodeJS avec succès. Si non, faites une référencesà la leçon ci-dessous :
Sur votre projet NodeJS, créez un dossier module-examples pour contenir les fichiers Javascript que vous avez pratiqué dans cette leçon.
Créez un fichier baptisé http-example.js dans le dossier module-examples.
http-example.js
var http = require("http");
http.createServer(function(req, res) {
res.writeHead(200, {"Content-Type": "text/html"});
res.write("<h1>Hello World</h1>");
res.write("<h2>Hello Http</h2>");
res.end();
}).listen(8080);
Ouvrez des fenêtres CMD et CD pour aller vers le dossier de votre projet. Utilisez le NodeJS pour exécuter le fichier http-example.js :
node ./module-examples/http-example.js
Ouvrez le navigateur et visitez le chemin :
2. Créer votre Module
Dans NodeJS vous pouvez créer un Module personnalisé. Le Module est un fichier Javascript. Merci à noter la location de ce fichier parce qu'elle affecte à la manière que vous l'utiliser. Deux choix de sélection la location de ce fichier proposés :
- Le fichier Module est mis dans le répertoir nommé node_modules (Le sous répertoir du projet). Ceci est la location recommandée.
- Le fichier Module est mis dans un de vos répertoires, pas dans le node_modules.
Le NodeJS vous recommande de mettre vos fichiers Module dans le dossier node_modules du projet. Attendez une minute, je vous donnerai des explications pourquoi votre module est recommandé à placer dans ce dossier.
La syntaxe de export (exportation) quelque chose dans votre fichier Javascript.
exports = something;
// or:
module.exports = something;
my-first-module.js
Tout d'abord, créez un fichier my-first-module.js dans le dossier node_modules, le fichier test-my-first-module.js dans un autre dossier.
Dans cet exemple, le fichier my-first-module.js contient plusieurs fonctions (function), mais je export (exporte) la fonction "sum".
node_modules/my-first-module.js
subtract = function(a, b) {
return a - b;
}
sum = function (a, b) {
return a + b;
}
module.exports = sum;
module-examples/test-my-first-module.js
var sum = require("my-first-module.js");
console.log("Sum 100 and 150");
var c = sum(100, 150);
console.log("Value = " + c);
Exécutez l'exemple ci-dessus :
node ./module-examples/test-my-first-module.js
Pour les fichiers module sont mis dans le dossier node_modules dont la manière d'utilisation est très simple. Ce n'est pas la peine de s'intéresser par le chemin relatif ou le chemin absolu.var myVar = require("module-file-name.js"); // or: var myVar = require("module-file-name");
my-second-module.js
Puis, nous créons un fichier my-second-module.js mis dans un dossier, par exemple : node_modules_2.
node_modules_2/my-second-module.js
var COPY_RIGHT = "o7planning";
module.exports = COPY_RIGHT;
Afin d'utiliser les module mis dans autres dossiers avec node_modules vous devez utiliser le chemin relatif.
module-examples/test-my-second-module.js
var copyRight
= require("../node_modules_2/my-second-module.js");
console.log("Copy right: " + copyRight);
node ./module-examples/test-my-second-module.js
3. Exporter plusieurs choses
Un fichier module peut contenir plusieurs fonctions (function), plusieurs variables (variable) et plusieurs classes (class). Cet exemple vous indique comment export (exporter) plusieurs choses dans ce fichier.
node_modules/my-third-module.js
// A variable!!
var COPY_RIGHT = "o7planning";
// A function!!
var multiple = function(a, b) {
return a * b;
};
// A class!!
var Person = class {
constructor(name, age) {
this.name = name;
this.age = age;
}
showInfo() {
console.log("name="+ this.name+", age="+ this.age);
}
};
// Something to Export!!
var somethingToExport = {
Person: Person,
multiple : multiple,
COPY_RIGHT : COPY_RIGHT
};
// Exprort it!!
module.exports = somethingToExport;
module-examples/test-my-third-module.js
var module3 = require("my-third-module.js");
console.log("Using Person class of module:");
var p = new module3.Person("Smith", 20);
p.showInfo();
console.log(" -- ");
console.log("Using multiple Function of module:");
var c = module3.multiple(20, 5);
console.log("Value= "+ c);
console.log(" -- ");
console.log("Using Variable of module:");
var copyRight = module3.COPY_RIGHT;
console.log("Copy right: " + copyRight);
node ./module-examples/test-my-third-module.js
Tutoriels de programmation NodeJS
- Introduction à NodeJs
- Qu'est-ce que NPM?
- Le Tutoriel de NodeJS pour débutant
- Installer Atom Editor
- Installer NodeJS sur Windows
- Le Tutoriel de NodeJS Module
- Le concept de Callback dans NodeJS
- Créer un HTTPServer simple avec NodeJS
- Comprendre Event Loop dans NodeJS
- Le Tutoriel de NodeJS EventEmitter
- Connectez-vous à la base de données MySQL dans NodeJS
Show More