Académique Documents
Professionnel Documents
Culture Documents
js
CommonJS
Syntaxe: Utilise require() pour importer des modules et module.exports pour les exporter.
Chargement: Synchronisé, idéal pour les serveurs où les modules sont sur le système de fichiers local.
Exemple:
ES6 Modules
Utilisation: Standard ECMAScript, utilisé dans le développement JavaScript moderne, tant côté client que
serveur.
Chargement: Asynchrone, adapté pour les applications web où les modules sont téléchargés via Internet.
Exemple:
Différences Clés
Support Navigateur: Les navigateurs modernes supportent nativement les modules ES6.
Analyse Statique vs Dynamique: Les modules ES6 permettent une analyse statique, contrairement à
CommonJS.
Version de Node.js: Assurez-vous d'utiliser Node.js version 12 ou ultérieure, avec un support plus stable
dans les versions 13.2.0 et plus.
Extension de Fichier: Utilisez l'extension .mjs ou ajoutez "type": "module" dans votre package.json.
Conclusion
L'utilisation de modules ES6 dans Node.js offre des avantages tels qu'une syntaxe plus propre, un meilleur support
pour l'analyse statique, et un meilleur alignement avec les standards ECMAScript. Cependant, il est important de
tester soigneusement votre code, surtout si vous intégrez des modules CommonJS et ES6 ensemble, pour assurer la
compatibilité et le bon fonctionnement de votre application.
17/12/2023
31/12/2023
app.listen(9999)
13/01/2024
Exemple :
// Middleware function
const myLogger = function (req, res, next) {
console.log('A request was made to:', req.url);
next();
};
// Route
app.get('/', (req, res) => {
res.send('Hello World!');
});
TP :
App.js :
app.listen(9000, () => {
console.log('Server is running on port 9000');
});
Login :
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>Login</title>
</head>
<body>
<h2>Login</h2>
<form action="/login" method="POST">
<div>
<label for="username">Username:</label>
<input type="text" id="username" name="username" required>
</div>
<div>
<label for="password">Password:</label>
<input type="password" id="password" name="password" required>
</div>
<div>
<button type="submit">Login</button>
</div>
</form>
</body>
</html>
Home:
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>Home</title>
</head>
<body>
<h1>Bonjour</h1>
<img src="/images/logo.png" alt="Logo" style="width: 150px; height: auto;">
</body>
</html>