Empresas
Empleos
  • Sobre nosotros
  • Soluciones
    • Publicación de vacantes
      Publica tu vacante y recibe candidatos calificados en 48h.
    • Evaluación de candidatos
      500+ pruebas técnicas y psicológicas, más anti-fraude.
    • Headhunting
      Búsqueda ejecutiva a la medida de principio a fin.
    • Nómina + EOR
      Dispersión de nómina y EOR en más de 15 países de LATAM.
  • Precios
  • Empleos

0

115
Vistas
Estrategia de importación de funciones puras de Javascript

Tengo un archivo de clase, utility.js para todas las funciones comunes. Sin embargo, algunas de las funciones requieren cierta importación de biblioteca, por ejemplo: biblioteca NetInfo

utilidad.js

 import NetInfo from "@react-native-community/netinfo"; export async function networkConnection() { const state = await NetInfo.fetch(); return state.type; }

Sin embargo, para que utility.js se pueda reutilizar en otro proyecto, otro proyecto debe tener NetInfo instalado. ¿Es una buena práctica si en lugar de importar módulos directamente, importo solo cuando necesito usarlo y paso el objeto de importación a la función?

utilidad.js

 export async function networkConnection({ NetInfo }) { const state = await NetInfo.fetch(); return state.type; }

y al usarlo

aplicación.js

 import NetInfo from "@react-native-community/netinfo"; import { networkConnection } from "./utility.js" const network = networkConnection({ NetInfo })

De esta forma, puedo copiar y pegar utility.js en cualquier proyecto, sin necesidad de instalar todos los paquetes de importación. Además, este patrón parece ser capaz de resolver el error común de dependencias circulares al limitar la declaración de importación.

¿Es esta la mejor práctica para crear un archivo de función común y reutilizable?

about 4 years ago · Juan Pablo Isaza
1 Respuestas
Responde la pregunta

0

Su pregunta ilustra la diferencia entre un cierre y una función simple, sin embargo, ninguno es puro .

Si la función solo sirve para esperar una promesa y devolver un valor de propiedad, realmente no tiene sentido usar el enfoque de no cierre... a menos que haya creado un módulo ( utility.js en su ejemplo) con otras exportaciones sin relación con el contexto de NetInfo . Si ese es el caso, creo que ese es el problema en el que debe concentrarse: la reorganización de las preocupaciones de su código.

Cuántos caracteres se necesitan para obtener el valor de dos maneras:

 console.log(`await networkConnection()`.length); // 25 console.log(`(await NetInfo.fetch()).type`.length); // 28

¿Vale la pena la abstracción? Hasta tu cerebro y tus dedos.

about 4 years ago · Juan Pablo Isaza Denunciar
Responde la pregunta
Encuentra empleos remotos

¡Descubre la nueva forma de encontrar empleo!

Top de empleos
Top categorías de empleo
Empresas
Publicar vacante Precios Comercial
Legal
Términos y condiciones Política de privacidad
© 2026 PeakU Inc. All Rights Reserved.
Andres GPT
Recomiéndame algunas ofertas
Necesito ayuda