Skip to content

Instalar npm con fnm

npm (Node Package Manager) se instala junto con Node.js. Esta guía introduce cómo gestionar npm a través de fnm.

Relación Entre npm y fnm

Cuando instalas Node.js usando fnm, npm se incluye automáticamente:

bash
# Instalar Node.js (automáticamente incluye npm)
fnm install 20

# Verificar versión de npm
npm --version

Verificar Versión de npm

bash
# Ver versión actual de npm
npm --version

# Ver versiones de Node.js y npm
node --version
npm --version

Diferentes versiones de Node.js corresponden a diferentes versiones de npm:

Node.jsnpm
20.x10.x
18.x9.x
16.x8.x

Actualizar npm

Usando Auto-Actualización de npm

bash
# Actualizar a última versión
npm install -g npm@latest

# Actualizar a versión específica
npm install -g npm@10.2.0

Cambiar Versión de Node.js

Cambiar la versión de Node.js también cambia la versión de npm:

bash
# Cambiar a Node.js 20
fnm use 20
npm --version  # Salida: 10.x.x

# Cambiar a Node.js 18
fnm use 18
npm --version  # Salida: 9.x.x

Gestión de Paquetes Globales de npm

Ver Ruta de Instalación Global

bash
npm config get prefix

Ubicación de Paquetes Globales

Los paquetes globales de Node.js gestionados por fnm se encuentran en:

~/.fnm/node-versions/<version>/installation/lib/node_modules

Instalar Paquetes Globales

bash
# Instalar paquetes globales
npm install -g pnpm
npm install -g yarn
npm install -g typescript

# Ver paquetes globales
npm list -g --depth=0

Usar Corepack

Corepack es un gestor de gestores de paquetes para Node.js que puede gestionar npm, yarn y pnpm:

Habilitar Corepack

bash
# Habilitar Corepack al instalar Node.js
fnm install 20 --corepack-enabled

# O establecer variable de entorno
export FNM_COREPACK_ENABLED=true
fnm install 20

Usar Corepack

bash
# Habilitar Corepack
corepack enable

# Usar versión específica de yarn
corepack prepare yarn@stable --activate

# Usar versión específica de pnpm
corepack prepare pnpm@latest --activate

Configuración de npm

Configurar Mirror

bash
# Establecer mirror de npm
npm config set registry https://registry.npmmirror.com

# Ver configuración actual
npm config list

# Restaurar mirror predeterminado
npm config set registry https://registry.npmjs.org

Mirrors Comunes

Fuente de MirrorURL
npm Oficialhttps://registry.npmjs.org
npmmirrorhttps://registry.npmmirror.com
Tencent Cloudhttps://mirrors.cloud.tencent.com/npm/

Gestión de Múltiples Versiones de npm

Dado que npm se instala con Node.js, la mejor manera de gestionar múltiples versiones de npm es:

Método 1: Cambiar Versión de Node.js

bash
# Instalar múltiples versiones de Node.js
fnm install 20
fnm install 18

# Cambiar versiones
fnm use 20  # npm 10.x
fnm use 18  # npm 9.x

Método 2: Actualizar npm Independientemente

bash
# Actualizar npm en la versión actual de Node.js
npm install -g npm@latest

Problemas Comunes

Comando npm No Encontrado

bash
# Confirmar que Node.js está instalado
fnm list

# Confirmar versión actual
fnm current

# Reinstalar Node.js
fnm install 20 --use

Instalación de Paquetes Globales Fallida

bash
# Limpiar caché de npm
npm cache clean --force

# Verificar permisos
ls -la ~/.fnm/node-versions/

# Reinstalar
npm install -g <package>

Versión de npm No Coincide

bash
# Verificar versión de Node.js
fnm current

# Restablecer npm a versión predeterminada
fnm uninstall <version>
fnm install <version>

Mejores Prácticas

1. Usar engines de package.json

Especificar versiones de Node.js y npm en el proyecto:

json
{
  "engines": {
    "node": ">=18.0.0",
    "npm": ">=9.0.0"
  }
}

2. Usar Archivo .npmrc

Crear archivo .npmrc en el proyecto:

registry=https://registry.npmmirror.com
save-exact=true

3. Bloquear Gestor de Paquetes

Usar campo packageManager:

json
{
  "packageManager": "npm@10.2.0"
}

Enlaces Relacionados