0
votes

Peut "exiger ();" Renvoie les fonctions / variables globales?

existe-t-il un moyen de mettre les fonctions exportées de modules dans l'espace de noms global, plutôt que d'un module spécifique?

module : xxx

fichier principal : xxx P> Cela fonctionne bien, mais je veux éviter de devoir faire référence au module: xxx

peut-il être fait?


0 commentaires

3 Réponses :


1
votes

Vous devriez être capable de faire xxx

puis faites-la signaler sans préfixe.


0 commentaires

2
votes

nécessite () code> n'apporte pas automatiquement les choses à l'espace de noms global comme si vous posez. Cela ne fait pas cela et n'est pas comme ça que ça marche. Il renvoie une valeur pouvant être une valeur individuelle ou un objet ou une matrice pleine de valeurs multiples. Vous devez affecter la valeur de retour ou une propriété sur la valeur de retour à quelque chose afin de l'enregistrer pour une utilisation ultérieure.

Vous pouvez utiliser Syntaxe ES6 pour créer automatiquement des variables dans la portée locale des propriétés spécifiques de l'objet renvoyé de exiger () code> comme ceci: p> xxx pré>

garder à l'esprit que ce ne sont pas des globaux non plus. Ce sont des variables de niveau de module. Ceci est vraiment juste un raccourci de langue pour cela: P>

const temp = require('./mod');
const sayName = temp.sayName;
const sayAge = temp.sayAge;

sayName("Pedro"); // My name is Pedro
sayAge(28); // My age is 28


0 commentaires

0
votes

oui !!, vous pouvez les ajouter à l'objet global . ( Ceci est considéré comme une mauvaise pratique, car tout le monde peut apporter des modifications à nos fonctions ) xxx

afin que vous puissiez simplement les appeler directement sans attribution de variables locales: < / p> xxx


0 commentaires