Die detaillierten Anweisungen sind in den Notizen geschrieben, daher werde ich hier nicht darüber sprechen. Bitte lesen Sie sie selbst im Detail. Verwenden Sie die Notizen nicht als Luft.
Die Codekopie lautet wie folgt:
/*Im Knoten kann das Modul unter Verwendung der Funktion Request () geladen werden.
* Die erforderliche Funktion verwendet einen Parameter. Der Parameterwert kann der Dateiname des Moduls mit einem vollständigen Pfad oder dem Modulnamen sein. Bei Verwendung des im Knoten bereitgestellten Moduls müssen Sie nur den Modulnamen in der erforderlichen Funktion angeben.
* *//
// eine Seite 2.JS erstellen; Der Code ist wie folgt
var name = "dr. sisi";
exports.name = name;
// eine Seite 1.JS erstellen; Der Code ist wie folgt
var zwei = erfordern ("./ 2.js");
console.log (zwei.name);
// Ausgabeergebnis: Dr. Sisi
/*
* Alle Skriptdateien im Knoten sind eine Moduldatei, also 1.JS ist auch eine Moduldatei. Da die Datei direkt über den Befehl node im Befehlszeilenfenster ausgeführt wird, wird die Moduldatei als Hauptmodul der Anwendung im Knoten definiert.
* Sie können die folgende Methode verwenden, um festzustellen, ob das aktuelle Modul das Hauptmodul ist
* *//
if (module === require.main) {
console.log ("Hauptmodul am aktuellen Modul");
}
// Ausgabeergebnis: Das Hauptmodul befindet sich derzeit im Modul
//2.js Code
var name = "dr. sisi";
console.log (name);
exports.name = name;
//1.js Code:
var zwei = erfordern ("./ 2.js");
var zwei = erfordern ("./ 2.js");
// Obwohl es zweimal verwiesen wurde, wurde es nur 1 Mal ausgeführt, um Konsole.log (Name) auszugeben.
/* require.resolve(str)
* Im Knoten kann diese Funktion verwendet werden, um den Dateinamen mit einem vollständigen absoluten Pfad einer Moduldatei abzufragen.
* *//
var url = require.resolve ("./ 2");
console.log (URL);
// Ausgabeergebnis: e: /node/gys/2.js
/* require.cache
* Im Knoten repräsentiert diese Eigenschaft den Cache -Bereich aller geladenen Module.
* *//
var zwei = erfordern ("./ 2.js");
var cache = require.cache;
console.log (cache);
/*Ausgabeergebnis:
* {'E: //node//gys//1.js':
{ Ausweis: '.',
Exporte: {},
Elternteil: NULL,
Dateiname: 'e: //node//gys//1.js',,
geladen: Falsch,
Kinder: [[Objekt]],
Pfade:
['E: // node // gys // node_modules',
'E: // node // node_modules',
'E: // node_modules']},
'E: //node//gys//2.js':
{id: 'e: //node//gys//2.js',,
Exporte: {Name: 'Dr. Sisi '},
Elternteil:
{ Ausweis: '.',
Exporte: {},
Elternteil: NULL,
Dateiname: 'e: //node//gys//1.js',,
geladen: Falsch,
Kinder: [Objekt],
Pfade: [Objekt]},
Dateiname: 'e: //node//gys//2.js',
geladen: true,
Kinder: [],
Pfade:
['E: // node // gys // node_modules',
'E: // node // node_modules',
'E: // node_modules']}}
* *//
//2.js Code
var name = "dr. sisi";
console.log (name);
//1.js Code
// Wenn Sie das Schlüsselwort Löschen verwenden, um ein im Cache zwischengestellter Modulobjekt zu löschen, wird das nächste Mal das Modul geladen, der Code im Modul wird erneut ausgeführt. Verwenden Sie den Code:
var zwei = erfordern ("./ 2.js");
var zwei1 = erfordern ("./ 2.js");
console.log ("Vor dem Löschen")
Delete required.cache [require.resolve ("./ 2.js")];
console.log ("nach Löschung");
var zwei2 = erfordern ("./ 2.js");
/*
* Ausgangsergebnis:
* Dr. Sisi
* Vor dem Löschen
* Nach dem Löschen
* Dr. Sisi
* *//
Haben Sie die Verwendung der Request () -Funktion im Knoten verstanden? Dieser Artikel ist ein eigenes Verständnis. Wenn es Auslassungen gibt, korrigieren Sie mich bitte.