English | 简体中文 | 繁體中文 | Русский язык | Français | Español | Português | Deutsch | 日本語 | 한국어 | Italiano | بالعربية
Reemplazo de funcionalidades de módulos de Node.js - en algunosEn el caso de que desee mejorar las funcionalidades de un módulo existente, en este tutorial de Node.js aprenderemos a sobrescribir las funcionalidades de un módulo.
Para sobrescribir una función existente en un módulo de Node.js, siga las siguientes instrucciones paso a paso:
El primer paso para sobrescribir una función en el módulo es incluir el módulo en sí mismo utilizando la función require.
var newMod = require('<module_name>');
Hemos recuperado el módulo en la variable.
En el módulo newMod, utilice la siguiente sintaxis para eliminar la función.
delete newMod['<function_name>'];
Recuerde que los cambios realizados solo afectan a la variable de módulo newMod, no al módulo original en sí.
En el módulo newMod, utilice la variable, agregue una función con el mismo nombre que la eliminada en el paso anterior con la siguiente sintaxis.
newMod.<function_name> = function(function_parameters) { // cuerpo de la función };
Debe reexportar el módulo para que la funcionalidad sobreescrita surta efecto.
module.exports = newMod;
Ahora, puede usar la variable newMod para el módulo para llamar a la función y luego ejecutar la funcionalidad sobreescrita.
En este ejemplo, cubriremos la función readFile() del módulo Node fs.
El primer paso para reescribir la funcionalidad del módulo es incluir el módulo en sí mismo usando la función require.
// Incluir el módulo que se va a cubrir var fs = require('fs'); // Eliminar la función que desea cubrir delete fs['readFile']; // Agregar una nueva función con el mismo nombre que la función eliminada fs.readFile = function(str){ console.log("La funcionalidad ha sido sobreescrita."); console.log(str); } // Reexportar el módulo para que los cambios surtan efecto module.exports = fs // Puede usar la función cubierta nueva fs.readFile("sample.txt");
Resultados de salida
~/espacio de trabajo/nodejs$ node node-js-sobreescritura-función-en-module.js
Mensaje de la función nueva añadida al módulo
sample.txt
Reescribir la función readFile() puede no ser una buena idea, pero es suficiente para la demostración.
En este tutorial –Reescribir las funciones del módulo Node.js,aprendimos a usar el programa de ejemplo Node.js para cubrir las funciones del módulo Node.js.