


Comment importer un module dans nodejs ? Introduction au processus d'exécution de require
Cet article vous donnera une introduction détaillée au processus d'exécution de require dans nodejs. Il a une certaine valeur de référence. Les amis dans le besoin peuvent s'y référer. J'espère qu'il sera utile à tout le monde.
Je regardais node récemment, j'ai donc délibérément appris le processus d'introduction de ses modules. Aujourd'hui, je vais faire un compte rendu de révision, j'espère que cela vous sera utile qui lisez
Classification des modules dans le nœud
Module de base, ou des modules intégrés (c'est-à-dire le propre fs du nœud, http, vm...) Pour plus de détails, veuillez consulter le site officiel api
Tiers modules, ou packages npm auto-emballés pour un usage privé Bibliothèque ou bibliothèque publique (installés et utilisés par npm install sur npm)
Les modules de fichiers, fichiers internes du projet, nécessitent l'utilisation du relatif méthode de chemin ou de chemin absolu
[Apprentissage recommandé : "tutoriel nodejs"]
Importation de module requise
Mon outil de débogage Utiliser le propre de vscode
require process
1. Lisez le fichier et entrez le mod de retour de la méthode require. .require (chemin)
2. Entrez mod.require et constatez que Module.prototype.require est réellement exécuté (l'identifiant ici est le chemin initial), euh ~ Pourquoi ? Appelé Module._load, ce n'est rien, continuons
3. Entrez Module._load(), Module._load(id, this, /* isMain */ false) Chargez le module selon le chemin
- Utilisez le nom du fichier comme clé de l'objet Module._cache pour vérifier si le fichier a été mis en cache. Si le cache est atteint, exporte directement <.>
- S'il n'existe pas dans le tableau de cache, Module._resolveFilename résout le chemin du fichier en un chemin absolu, puis vérifie de manière persistante le cache si le cache l'est. hit, exports
- Les deux premières recherches dans le cache excluent les modules externes, puis déterminent s'il s'agit d'un module intégré. Si tel est le cas, exportez<.>
4. Entrez new Module () et créez un objet vide this.exports = {} : C'est l'objet d'exportation que nous souhaitons finalement, (les modules référencés dans d'autres modules ne seront pas étudiés en profondeur ici)
5. Module._cache [nom du fichier] Le chemin analysé à l'étape 3 est utilisé comme clé et l'objet créé à l'étape 4 est utilisé comme valeur et stocké dans notre cache. tableau. continue! !
6. module.load(), entrez la fonction
- findLongestRegisteredExtension calcule le suffixe du nom de fichier,
- Module._extensions[extension](this, filename) appelle différentes méthodes de chargement en fonction de différents suffixes (ici utilisé est le mode stratégie )
-
Ce que j'ai frappé ici, c'est .js. Dans cette méthode, fs.readFileSync est utilisé pour lire le fichier de manière synchrone, puis le module._compile(content, filename) est appelé en tant que paramètres
7. Entrez module._compile() , et j'ai découvert que le contenu était utilisé comme paramètre de wrapSafe(filename, content, this) et exécuté
8. Entrez ensuite wrapSafe() ps : je vais parler du ancienne version ici directement, exécutez C'est plus facile à comprendre
- D'abord, il appelle Module.wrap, entre dans la fonction et le module de nœud est empaqueté comme requis (fonction ( ){ }), formant un module indépendant
- , puis utilisez le module de chaîne encapsulé renvoyé comme paramètre vm.runInThisContext pour exécuter le code du module (même comme nouvelle fonction dans js L'effet peut être de transformer la chaîne en js pour l'exécution), pour plus de détails sur les propres méthodes intégrées du nœud, veuillez vous référer au responsable du nœud
9. À ce stade, le Le processus require d'un module a été exécuté et l'utilisateur l'obtiendra par défaut. Le résultat de retour de module.export
Résumé
Lire le fichier
Lire le fichier À l'avenir, enveloppez une fonction pour le fichier
Fonction de format de fonction (exports, module, require, _dirname , nom de fichier) {}
Placez le module via runThisContext Transformez-vous en syntaxe js pour appeler
Pour plus de connaissances liées à la programmation, veuillez visiter : Introduction à la programmation ! !
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!

Outils d'IA chauds

Undresser.AI Undress
Application basée sur l'IA pour créer des photos de nu réalistes

AI Clothes Remover
Outil d'IA en ligne pour supprimer les vêtements des photos.

Undress AI Tool
Images de déshabillage gratuites

Clothoff.io
Dissolvant de vêtements AI

AI Hentai Generator
Générez AI Hentai gratuitement.

Article chaud

Outils chauds

Bloc-notes++7.3.1
Éditeur de code facile à utiliser et gratuit

SublimeText3 version chinoise
Version chinoise, très simple à utiliser

Envoyer Studio 13.0.1
Puissant environnement de développement intégré PHP

Dreamweaver CS6
Outils de développement Web visuel

SublimeText3 version Mac
Logiciel d'édition de code au niveau de Dieu (SublimeText3)

Node.js est un environnement d'exécution JavaScript côté serveur, tandis que Vue.js est un framework JavaScript côté client permettant de créer des interfaces utilisateur interactives. Node.js est utilisé pour le développement côté serveur, comme le développement d'API de service back-end et le traitement des données, tandis que Vue.js est utilisé pour le développement côté client, comme les applications monopage et les interfaces utilisateur réactives.

Node.js peut être utilisé comme framework backend car il offre des fonctionnalités telles que des performances élevées, l'évolutivité, la prise en charge multiplateforme, un écosystème riche et une facilité de développement.

Pour vous connecter à une base de données MySQL, vous devez suivre ces étapes : Installez le pilote mysql2. Utilisez mysql2.createConnection() pour créer un objet de connexion contenant l'adresse de l'hôte, le port, le nom d'utilisateur, le mot de passe et le nom de la base de données. Utilisez connection.query() pour effectuer des requêtes. Enfin, utilisez connection.end() pour mettre fin à la connexion.

Les variables globales suivantes existent dans Node.js : Objet global : global Module principal : processus, console, nécessiter Variables d'environnement d'exécution : __dirname, __filename, __line, __column Constantes : undefined, null, NaN, Infinity, -Infinity

Il existe deux fichiers liés à npm dans le répertoire d'installation de Node.js : npm et npm.cmd. Les différences sont les suivantes : différentes extensions : npm est un fichier exécutable et npm.cmd est un raccourci de fenêtre de commande. Utilisateurs Windows : npm.cmd peut être utilisé à partir de l'invite de commande, npm ne peut être exécuté qu'à partir de la ligne de commande. Compatibilité : npm.cmd est spécifique aux systèmes Windows, npm est disponible multiplateforme. Recommandations d'utilisation : les utilisateurs Windows utilisent npm.cmd, les autres systèmes d'exploitation utilisent npm.

Les principales différences entre Node.js et Java résident dans la conception et les fonctionnalités : Piloté par les événements ou piloté par les threads : Node.js est piloté par les événements et Java est piloté par les threads. Monothread ou multithread : Node.js utilise une boucle d'événements monothread et Java utilise une architecture multithread. Environnement d'exécution : Node.js s'exécute sur le moteur JavaScript V8, tandis que Java s'exécute sur la JVM. Syntaxe : Node.js utilise la syntaxe JavaScript, tandis que Java utilise la syntaxe Java. Objectif : Node.js convient aux tâches gourmandes en E/S, tandis que Java convient aux applications de grande entreprise.

Oui, Node.js est un langage de développement backend. Il est utilisé pour le développement back-end, notamment la gestion de la logique métier côté serveur, la gestion des connexions à la base de données et la fourniture d'API.

Étapes de déploiement de serveur pour un projet Node.js : Préparez l'environnement de déploiement : obtenez l'accès au serveur, installez Node.js, configurez un référentiel Git. Créez l'application : utilisez npm run build pour générer du code et des dépendances déployables. Téléchargez le code sur le serveur : via Git ou File Transfer Protocol. Installer les dépendances : connectez-vous en SSH au serveur et installez les dépendances de l'application à l'aide de npm install. Démarrez l'application : utilisez une commande telle que node index.js pour démarrer l'application ou utilisez un gestionnaire de processus tel que pm2. Configurer un proxy inverse (facultatif) : utilisez un proxy inverse tel que Nginx ou Apache pour acheminer le trafic vers votre application
