English | 简体中文 | 繁體中文 | Русский язык | Français | Español | Português | Deutsch | 日本語 | 한국어 | Italiano | بالعربية
Funzionalità sostitutive dei moduli Node.js – in alcuniNel caso in cui desideri migliorare le funzionalità di un modulo esistente attraverso la sua riscrittura. In questo tutorial Node.js, impareremo a sovrascrivere le funzionalità dei moduli Node.js.
Per sovrascrivere una funzione esistente nel modulo Node.js, segui la seguente guida passo-passo:
Il primo passo per sovrascrivere una funzione nel modulo è includere il modulo stesso utilizzando la funzione require.
var newMod = require('<module_name>');
Abbiamo recuperato il modulo nella variabile.
Usa la seguente sintassi per eliminare la funzione utilizzando la variabile nel modulo newMod.
delete newMod['<function_name>'];
Ricorda, le modifiche apportate sono solo per la variabile del modulo newMod, non per il modulo originale.
Usa la variabile nella nuova variabile modulo, aggiungi una funzione con lo stesso nome dell'eliminata nel passo precedente con la seguente sintassi.
newMod.<function_name> = function(function_parameters) { // Corpo della funzione };
Devi reesportare il modulo per rendere effettive le funzionalità sovrascritte.
module.exports = newMod;
Ora, puoi utilizzare la variabile newMod per il modulo per chiamare la funzione e poi eseguire la funzione sovrascritta.
In questo esempio, sovrascriveremo la funzione readFile() del modulo Node fs.
Il primo passo per sovrascrivere una funzione in un modulo è utilizzare la funzione require per includere il modulo stesso.
// Inclusione del modulo da sovrascrivere var fs = require('fs'); // Elimina la funzione che desideri sovrascrivere delete fs['readFile']; // Aggiungi una nuova funzione con lo stesso nome della funzione eliminata fs.readFile = function(str){ console.log("La funzionalità è stata sovrascritta."); console.log(str); } // Reesporta il modulo per rendere effettive le modifiche module.exports = fs // Puoi utilizzare la nuova funzione sovrascritta fs.readFile("sample.txt");
Risultato dell'output
~/workspace/nodejs$ node node-js-overriding-function-in-module.js
Messaggio dalla nuova funzione aggiunta al modulo
sample.txt
Riscrivere la funzione readFile() potrebbe non essere una buona idea, ma è sufficiente per la dimostrazione.
In questo tutorial -Riscrivere le funzionalità dei moduli Node.jsAbbiamo imparato a utilizzare esempi di programmi Node.js per coprire le funzionalità dei moduli Node.js.