Je cherche le meilleur moyen de remplacer une méthode dans un noeud de module personnalisé.Méthode de remplacement dans node.js
Je travaille sur un middleware personnalisé qui va m'aider à charger automatiquement un module personnalisé. Comme la sécurité, les utilisateurs etc ...
Mais je veux être en mesure de remplacer certaines méthodes si j'ai besoin de quelque chose comme un contrôle de sécurité personnalisé. Pour l'instant, la seule façon que j'ai trouvé est d'exporter une fonction qui va remplacer ma méthode et exposer les variables de contexte.
// CUSTOM MODULE EXAMPLE
// ========================================
var myVar = "Hello ";
var myVar2 = "!";
var method = function() {
return "world" + myVar2;
}
module.exports.loadModule = function() {
console.log(myVar + method());
};
module.exports.overrideMethod = function(customMethod) {
method = customMethod;
};
module.exports.myVar2 = myVar2;
Et mon application principale sera comme ça:
// MAIN APP EXAMPLE
// ========================================
var myCustomModule = require('customModule.js');
myCustomModule.overrideMethod(function() {
return "viewer" + myCustomModule.myVar2;
});
myCustomModule.loadModule();
Que pensez-vous? Suis-je sur le bon chemin?
Merci pour la lecture. Tom
travail est assez bon. vous pouvez même simplement en importer un, réduire certaines choses à l'exportation et utiliser le nouveau module à la place de l'ancien. – dandavis