Skip to content

Cấu hình

Volta sử dụng một số file cấu hình để quản lý chuỗi công cụ JavaScript của bạn. Tham chiếu này giải thích các tùy chọn cấu hình khả dĩ và định dạng của chúng.

Cấu hình Dự án

Cấu hình cụ thể cho dự án được lưu trữ trong file package.json của dự án của bạn dưới key volta.

Định dạng

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

Thuộc tính

Thuộc tínhKiểuMô tả
nodeStringPhiên bản Node.js để sử dụng trong dự án này
npmStringPhiên bản npm để sử dụng trong dự án này
yarnStringPhiên bản Yarn để sử dụng trong dự án này
pnpmStringPhiên bản pnpm để sử dụng trong dự án này
extendsStringĐường dẫn đến file cấu hình Volta chia sẻ

Định dạng Phiên bản

Chuỗi phiên bản trong cấu hình volta có thể sử dụng các định dạng sau:

  • Phiên bản chính xác: 16.14.2
  • Chỉ phiên bản chính: 16
  • Phiên bản chính và phụ: 16.14
  • Phạm vi phiên bản (npm semver): ^16.14.0
  • Thẻ: latest, lts

Cấu hình Dự án Chia sẻ

Bạn có thể tạo cấu hình Volta chia sẻ mà nhiều dự án có thể mở rộng. Điều này hữu ích cho các tổ chức muốn tiêu chuẩn hóa phiên bản công cụ trên các dự án.

Định dạng

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

Định dạng giống như phần volta trong package.json, nhưng ở cấp root của file JSON.

Cấu hình Người dùng

Cấu hình người dùng của Volta được lưu trữ trong thư mục home Volta:

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

Lưu trữ Công cụ

Các công cụ đã cài đặt được lưu trữ trong các thư mục có cấu trúc:

  • Node.js: ~/.volta/tools/image/node/
  • Trình quản lý gói: ~/.volta/tools/image/yarn/, ~/.volta/tools/image/npm/
  • Gói: ~/.volta/tools/user/packages/

Thư mục Hooks

Các hook tùy chỉnh được lưu trữ trong ~/.volta/hooks/. Xem phần Tính năng Nâng cao để biết thêm chi tiết.

Biến Môi trường

Biến môi trường cung cấp một cách khác để cấu hình hành vi của Volta. Xem trang Biến Môi trường để biết tham chiếu đầy đủ.

Thứ tự Ưu tiên Cấu hình

Khi phân giải phiên bản công cụ nào để sử dụng, Volta kiểm tra các nguồn theo thứ tự sau:

  1. Đối số dòng lệnh (ví dụ: volta run --node 14)
  2. Cấu hình dự án trong package.json gần nhất có phần volta
  3. Phiên bản công cụ mặc định của người dùng (được đặt qua volta install)
  4. Phiên bản đi kèm (ví dụ: npm đi kèm với Node.js)

Ví dụ

Cấu hình Dự ánTypical

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

Cấu hình Mở rộng

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"  // Ghi đè bất kỳ phiên bản npm nào trong cấu hình mở rộng
  }
}

Cấu hình Workspace

Đối với các dự án dựa trên workspace, cấu hình package.json root áp dụng cho tất cả các gói workspace:

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

// packages/app/package.json - sẽ sử dụng Node.js 16.14.2 và Yarn 1.22.19
{
  "name": "app",
  "version": "1.0.0",
  // Không cần phần volta ở đây
}

Released under the BSD 2-Clause License.