Node.js: require() ed i percorsi

Node.js: require() ed i percorsi

Il costrutto require() di Node.js viene utilizzato per includere i moduli di un'applicazione. Esistono due tipi di moduli: i moduli globali dell'app (che risiedono in node_modules) e quelli definiti in fase di sviluppo.

Per i primi non è necessario specificare un percorso:


'use strict';

const express = require('express'); // Riferimento all'oggetto Express 
const app = express(); // Istanza

Quelli definiti in fase di sviluppo al contrario necessitano di un percorso. Il modo migliore è quello di utilizzare un percorso assoluto. A differenza di quanto accade in PHP, il percorso assoluto alla directory in cui risiede la nostra app deve essere ottenuto dinamicamente. Per farlo ci occorre trovare il percorso del file principale della nostra app:


const path =  require('path');
const ABS_PATH = path.dirname(process.mainModule.filename);

const MyModule = require(ABS_PATH + '/lib/mymodule');

Quindi se il file principale è app.js e si trova in /home/utente/app, ABS_PATH sarà appunto /home/utente/app.

Torna su