Skip to content

Configurazione

Volta utilizza più file di configurazione per gestire la tua catena di strumenti JavaScript. Questo riferimento descrive le opzioni di configurazione disponibili e il loro formato.

Configurazione del progetto

La configurazione specifica del progetto è memorizzata sotto la chiave volta nel file package.json del progetto.

Formato

json
{
  "volta": {
    "node": "16.14.2",
    "npm": "8.5.0",
    "yarn": "1.22.19",
    "extends": "../shared-volta-config.json"
  }
}

Proprietà

ProprietàTipoDescrizione
nodeStringVersione di Node.js da utilizzare in questo progetto
npmStringVersione di npm da utilizzare in questo progetto
yarnStringVersione di Yarn da utilizzare in questo progetto
pnpmStringVersione di pnpm da utilizzare in questo progetto
extendsStringPercorso del file di configurazione Volta condiviso

Formato delle versioni

Le stringhe di versione nella configurazione volta possono utilizzare i seguenti formati:

  • Versione esatta: 16.14.2
  • Solo versione principale: 16
  • Versione principale e secondaria: 16.14
  • Intervallo di versioni (npm semver): ^16.14.0
  • Tag: latest, lts

Configurazione condivisa del progetto

Puoi creare configurazioni Volta condivise che più progetti possono estendere. Questo è utile per le organizzazioni che desiderano standardizzare le versioni degli strumenti tra i progetti.

Formato

json
{
  "node": "16.14.2",
  "npm": "8.5.0"
}

Il formato è lo stesso della sezione volta nel package.json, ma al livello root del file JSON.

Configurazione utente

La configurazione utente di Volta è memorizzata nella directory principale di Volta:

  • Unix: ~/.volta/
  • Windows: %LOCALAPPDATA%\Volta\

Archiviazione degli strumenti

Gli strumenti installati sono memorizzati in directory strutturate:

  • Node.js: ~/.volta/tools/image/node/
  • Gestori di pacchetti: ~/.volta/tools/image/yarn/, ~/.volta/tools/image/npm/
  • Pacchetti: ~/.volta/tools/user/packages/

Directory degli hooks

Gli hooks personalizzati sono memorizzati in ~/.volta/hooks/. Per maggiori dettagli, consulta la sezione Funzionalità avanzate.

Variabili d'ambiente

Le variabili d'ambiente forniscono un altro modo per configurare il comportamento di Volta. Per un riferimento completo, consulta la pagina Variabili d'ambiente.

Priorità di configurazione

Quando risolve quale versione di strumento utilizzare, Volta controlla le fonti nel seguente ordine:

  1. Argomenti della riga di comando (ad esempio, volta run --node 14)
  2. Configurazione del progetto nel package.json più vicino che contiene una sezione volta
  3. Versioni degli strumenti predefiniti dell'utente (impostate tramite volta install)
  4. Versioni bundle (ad esempio, npm bundle con Node.js)

Esempi

Configurazione tipica del progetto

json
{
  "name": "my-project",
  "version": "1.0.0",
  "volta": {
    "node": "16.14.2",
    "npm": "8.5.0"
  },
  "dependencies": {
    // ...
  }
}

Configurazione estesa

json
// shared-config.json
{
  "node": "16.14.2",
  "yarn": "1.22.19"
}

// package.json
{
  "name": "my-project",
  "version": "1.0.0",
  "volta": {
    "extends": "./shared-config.json",
    "npm": "8.5.0"  // Sostituisce qualsiasi versione npm nella configurazione estesa
  }
}

Configurazione workspace

Per progetti basati su workspace, la configurazione del package.json root si applica a tutti i pacchetti del workspace:

json
// package.json root
{
  "name": "workspace-root",
  "volta": {
    "node": "16.14.2",
    "yarn": "1.22.19"
  },
  "workspaces": [
    "packages/*"
  ]
}

// packages/app/package.json - userà Node.js 16.14.2 e Yarn 1.22.19
{
  "name": "app",
  "version": "1.0.0",
  // Nessuna sezione volta necessaria qui
}