JS: Configuración del entorno
Teoría: Dependencias
Cuando trabajamos en proyectos reales con JavaScript, no todo lo podemos hacer solo con las funciones que ya vienen incluidas. A veces necesitamos herramientas extra. Por suerte, existe una gran comunidad que comparte soluciones reutilizables, conocidas como paquetes de terceros.
¿Qué es la biblioteca estándar?
Veamos algunos ejemplos:
Eso funciona tanto en el navegador como en Node.js. Pero Node.js (que usamos para ejecutar JavaScript en el servidor o en la terminal) incluye muchos más módulos útiles.
Por ejemplo:
En resumen:
Sin embargo, la biblioteca estándar tiene sus límites. Entonces...
¿Por qué usar paquetes de terceros?
A veces necesitamos hacer cosas más complejas: trabajar con fechas, convertir textos, manipular arrays, enviar correos, crear PDFs… Y no queremos escribir todo desde cero.
Ejemplos de paquetes útiles
Veamos lodash en acción:
💡 Una nota clave: cuando importamos paquetes así:
No usamos ./, porque el paquete está en una carpeta especial llamada node_modules/.
Si pusiéramos esto, estaríamos buscando un archivo llamado lodash.js en nuestra carpeta, lo cual no es lo correcto.
¿Cómo instalamos paquetes con npm?
Si escribimos código que usa lodash sin instalarlo, veremos un error como este:
Pasos para instalar un paquete
Desde la terminal, en la carpeta del proyecto:
Esto hace varias cosas:
- Descarga el paquete y lo guarda en
node_modules/. - Registra la dependencia en el archivo
package.json. - Crea (o actualiza) el archivo
package-lock.json.
Ahora podemos importar lodash y usarlo sin problemas:
¿Qué hacen package.json y package-lock.json?
Estos dos archivos son responsables de llevar el control de qué paquetes usa el proyecto:
package.json
Es el archivo principal de configuración del proyecto. Allí se guardan las dependencias con sus versiones mínimas necesarias.
Cuando instalas un paquete con npm install, su nombre y versión se agregan automáticamente a package.json.
❓ ¿Por qué es útil?
- Nos asegura que si otra persona instala el proyecto, tendrá exactamente las mismas versiones.
npmusa este archivo cuando ejecutamos:
Esto instala exactamente lo que diga el archivo package-lock.json.
node_modules y Git
Cuando usamos Git (por ejemplo, en GitHub), tenemos que tener cuidado con los archivos que subimos.
¿Qué debe ir en Git?
Entonces, en .gitignore debemos asegurarnos de incluir:
Y si clonamos un proyecto de GitHub, antes de ejecutarlo debemos instalar sus dependencias con:
Advertencias al instalar
A veces al instalar paquetes, npm muestra advertencias como esta:
❓ ¿Es grave? Normalmente no.
Si quieres actualizar los paquetes a las últimas versiones que sean compatibles con tu package.json, puedes ejecutar:
Resumen
- JavaScript incluye una biblioteca estándar con funciones básicas.
- Podemos ampliar sus capacidades usando paquetes de terceros.
- Instalamos paquetes con el comando
npm install <nombre>. - Los paquetes quedan guardados en la carpeta
node_modules/. package.jsonguarda qué paquetes usamos.package-lock.jsonguarda las versiones exactas de las dependencias.- No debes subir
node_modules/a Git, pero sípackage.jsonypackage-lock.json. - Para instalar todas las dependencias correctamente, se recomienda usar
npm ci. - Las advertencias de
npmno siempre son errores; muchas veces son solo avisos.
Completado
0 / 11