Business
Jobs
  • About Us
  • Solutions
    • Job Postings
      Post your job and receive qualified candidates in 48h.
    • Candidate Assessments
      500+ technical and psychological tests, plus anti-fraud.
    • Headhunting
      Tailor-made executive search from start to finish.
    • Payroll + EOR
      Payroll dispersal and EOR across 15+ LATAM countries.
  • Pricing
  • Jobs

0

182
Views
¿Cómo hacer que un paquete npm esté disponible para múltiples módulos JS?

Contexto :

Estoy haciendo la transición de la forma tradicional js/html de hacer desarrollo frontend:

 <script src="link-to-the-js-file"></script> <!-- Now, just use the library... -->

A la forma moderna de npm/js-modules/webpack:

 npm install whatever require('whatever') whatever.doSomething();

Pregunta :

Estoy confundido acerca de cuándo y cómo requerir paquetes que se utilizarán en varios módulos.

Digamos que tengo dos funciones en mi sitio para las que quiero usar axios .

Yo lo haría:

archivo : función.js

 /** * Some JS module where I'll use axios */ const axios = require('axios'); export default () => ({ ... axios.doWhatever(); ... });

Pero, ¿y si hay otro módulo que también necesita axios?

Si lo requiero en another-file.js , ¿no tendré axios incluidos varias veces en mi JS compilado?

Así que esto me lleva a pensar... está bien, lo adjuntaré al alcance de la ventana y lo usaré desde allí cuando quiera.

Y ve con algo como:

archivo : archivo -global.js

 window.axios = require('axios');

Pero no sé si esto es una buena práctica.

Sé que aquí no se permiten preguntas basadas en opiniones, pero debe haber un enfoque genérico sólido para esto. No quiero "simplemente hacer que funcione", quiero hacer las cosas de manera correcta. Agradeceré tu ayuda.

about 4 years ago · Juan Pablo Isaza
1 answers
Answer question

0

De la documentación del nodo:

Los módulos se almacenan en caché después de la primera vez que se cargan. Esto significa (entre otras cosas) que cada llamada a require('foo') devolverá exactamente el mismo objeto, si se resuelve en el mismo archivo.

Entonces, básicamente (en la mayoría de los casos) está usando el mismo objeto/archivo. Pero si no desea repetirse en varios archivos, simplemente puede agregarlo al alcance global de la siguiente manera:

 axios = require('axios ');

Obtenga más información sobre el almacenamiento en caché de Node.js.

about 4 years ago · Juan Pablo Isaza Report
Answer question
Find remote jobs

Discover the new way to find a job!

Top jobs
Top job categories
Business
Post vacancy Pricing Sales
Legal
Terms and conditions Privacy policy
© 2026 PeakU Inc. All Rights Reserved.
Andres GPT
Show me some job opportunities
There's an error!