le module.les exportations comprennent toutes les fonctions dans une seule ligne
C'est une question de suivi à Dans Node.js comment puis-je "include" fonctions de mes autres fichiers?
Je voudrais inclure un fichier js externe qui contient des fonctions pour une node.js app.
À partir de l'une des réponses à Dans Node.js comment puis-je "include" fonctions de mes autres fichiers?, ce qui peut être fait par
//tools.js
//========
module.exports = {
foo: function () {
//whatever
},
bar: function () {
//whatever
}
};
var zemba = function () {
}
Il est gênant pour l'exportation de chaque fonction. Est-il possible d'avoir un one-liner qui exporte toutes les fonctions? Quelque chose qui ressemble à ceci;
module.exports = 'all functions';
Il est tellement plus commode de cette façon. Il est également moins buggy dans le cas où l'on oublie de l'exportation de certaines fonctions plus tard.
Si ce n'est un one-liner, il y a des alternatives plus simples que rendre la programmation plus pratique? J'ai juste envie d'inclure un fichier js externe composée de fonctions communes idéalement. Quelque chose comme include <stdio.h>
en C/C++.
OriginalL'auteur user781486 | 2015-11-08
Vous devez vous connecter pour publier un commentaire.
Vous pouvez écrire toutes vos déclarations de fonction en premier et ensuite les exporter dans un objet:
Il n'y a pas de formule magique one-liner, vous devez explicitement à l'exportation les fonctions que vous voulez être public.
Cela fonctionne bien pour moi
OriginalL'auteur Timur Ridjanovic
J'ai fait quelque chose comme ce qui suit:
J'ai besoin d'elle dans un autre fichier et je peux accéder à ces fonctions
C'est essentiellement juste un objet à l'aide des fonctions, et ensuite de l'exportation de l'objet.
Cependant, cette solution ne fonctionne pas si vous voulez que l'un de vos fonctions à appeler un autre de vos fonctions. Vous pouvez contourner le problème en utilisant une classe.
OriginalL'auteur Peter Huffer
Il est intéressant de noter que dans l'ES6, vous pouvez maintenant exporter des fonctions comme ceci:
Simplement écrire
export
avant les fonctions que vous souhaitez exporter. Plus d'informations ici.OriginalL'auteur EpicDavi