Esporta modulo nel Nodo.js

Qui, imparerai come esporre diversi tipi come modulo usando il modulo.esportazione.

Il module.exports è un oggetto speciale che è incluso in ogni file JavaScript nel Nodo.applicazione js per impostazione predefinita. moduleè una variabile che rappresenta il modulo corrente e exports è un oggetto che verrà esposto come modulo. Quindi, qualunque cosa tu assegni a module.exports sarà esposto come un modulo.,

Vediamo come esporre diversi tipi come modulo usandomodule.exports.

Esporta letterali

Come menzionato sopra,exports è un oggetto. Quindi espone tutto ciò che gli hai assegnato come modulo. Ad esempio, se si assegna una stringa letterale, allora esporrà quella stringa letterale come modulo.

Il seguente esempio espone il messaggio stringa semplice come modulo nel messaggio.js.

Messaggio.,js

Copia

module.exports = 'Hello world';

Ora, importa questo modulo di messaggio e usalo come mostrato di seguito.

app.js

Copia

var msg = require('./Messages.js');console.log(msg);

Esegui l’esempio precedente e vedi il risultato, come mostrato di seguito.

C:\> nodo app.js
Hello World

Nota:
È necessario specificare./ come percorso della cartella principale per importare un modulo locale. Tuttavia, non è necessario specificare il percorso da importare Nodo.,moduli core js o moduli NPM nella funzionerequire().

Esporta Oggetto

Ilexports è un oggetto. Quindi, puoi allegare proprietà o metodi ad esso. L’esempio seguente espone un oggetto con una proprietà string nel fileMessage.js.

Messaggio.js

Copy

exports.SimpleMessage = 'Hello world';//ormodule.exports.SimpleMessage = 'Hello world';

Nell’esempio precedente, abbiamo allegato una proprietà SimpleMessage all’oggetto exports. Ora, importa e usa questo modulo, come mostrato di seguito.

app.,js

Copia

var msg = require('./Messages.js');console.log(msg.SimpleMessage);

Nell’esempio precedente, il require() funzione restituirà un oggetto { SimpleMessage : 'Hello World'} e assegnarlo alla variabile msg. Quindi, ora puoi usare msg.SimpleMessage.

Esegui l’esempio precedente scrivendonode app.js nel prompt dei comandi e vedi l’output come mostrato di seguito.

C:\> nodo app.js
Ciao mondo

Allo stesso modo come sopra, puoi esporre un oggetto con funzione., L’esempio seguente espone un oggetto con la funzione log come modulo.

Log.js

Copia

module.exports.log = function (msg) { console.log(msg);};

Il modulo precedente esporrà un oggetto – { log : function(msg){ console.log(msg); } } . Utilizzare il modulo di cui sopra come mostrato di seguito.

app.js

Copia

var msg = require('./Log.js');msg.log('Hello World');

Esegui e vedi l’output nel prompt dei comandi come mostrato di seguito.

C:\> nodo app.,js
Hello World

Puoi anche allegare un oggetto a module.exports, come mostrato di seguito.

dati.js

Copia

app.js

Copia

var person = require('./data.js');console.log(person.firstName + ' ' + person.lastName);

Esegui l’esempio precedente e vedi il risultato, come mostrato di seguito.

C:\> nodo app.js
James Bond

PUBBLICITÀ

Funzione di esportazione

È possibile allegare una funzione anonima per le esportazioni oggetto come mostrato di seguito.,

Log.js

Copia

module.exports = function (msg) { console.log(msg);};

Ora, è possibile utilizzare il modulo di cui sopra, come mostrato di seguito.

app.js

Copia

var msg = require('./Log.js');msg('Hello World');

La variabile msg diventa un’espressione di funzione nell’esempio precedente. Quindi, puoi richiamare la funzione usando la parentesi (). Esegui l’esempio sopra e vedi l’output come mostrato di seguito.

C:\> nodo app.,js
Hello World

Esporta la funzione come Classe

In JavaScript, una funzione può essere trattata come una classe. L’esempio seguente espone una funzione che può essere utilizzata come una classe.

Il modulo di cui sopra può essere utilizzato, come mostrato di seguito.

app.js

Copia

Come puoi vedere, abbiamo creato un oggetto personusando la parola chiave new. Esegui l’esempio sopra, come mostrato di seguito.

C:\> nodo app.,js
James Bond

In questo modo, è possibile esportare e importare un modulo locale creato in un file separato nella cartella principale.

Nodo.js consente inoltre di creare moduli in sottocartelle. Vediamo come caricare il modulo dalle sottocartelle.

Carica il modulo dalla cartella separata

Usa il percorso completo di un file modulo in cui lo hai esportato usandomodule.exports. Ad esempio, se il modulo di registro nel registro.js è memorizzato nella cartellautility nella cartella principale dell’applicazione, quindi importarlo, come mostrato di seguito.

app.,js

Copy

var log = require('./utility/log.js');

Nell’esempio precedente, . è per la cartella principale, quindi specificare il percorso esatto del file del modulo. Nodo.js ci permette anche di specificare il percorso della cartella senza specificare il nome del file. Ad esempio, è possibile specificare solo la cartella utility senza specificare log.js, come mostrato di seguito.

app.js

Copia

var log = require('./utility');

Nell’esempio precedente, Node.,js cercherà un file di definizione del pacchetto chiamato package.json all’interno della cartella utility. Questo perché Node presuppone che questa cartella sia un pacchetto e proverà a cercare una definizione di pacchetto.Il filepackage.json deve trovarsi in una directory del modulo. Il package.jsonnella cartella utility specifica il nome del file utilizzando ilmain chiave, come mostrato di seguito.

./ utilità / pacchetto.json

Copia

{ "name" : "log", "main" : "./log.js"}

Ora, Nodo.,js troverà il filelog.js usando la vocemain inpackage.json e lo importerà.

Nota:
Se il file package.json non esiste, allora cercherà index.file js come file modulo per impostazione predefinita.

Author: admin

Lascia un commento

Il tuo indirizzo email non sarà pubblicato. I campi obbligatori sono contrassegnati *