Skip to content

التكوين

يستخدم Volta ملفات تكوين متعددة لإدارة سلسلة أدوات JavaScript الخاصة بك. هذا المرجع يوضح خيارات التكوين المتاحة وتنسيقها.

تكوين المشروع

يتم تخزين التكوين المحدد للمشروع تحت مفتاح volta في ملف package.json للمشروع.

التنسيق

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

الخصائص

الخاصيةالنوعالوصف
nodeStringإصدار Node.js المستخدم في هذا المشروع
npmStringإصدار npm المستخدم في هذا المشروع
yarnStringإصدار Yarn المستخدم في هذا المشروع
pnpmStringإصدار pnpm المستخدم في هذا المشروع
extendsStringمسار ملف تكوين Volta المشترك

تنسيق الإصدار

يمكن استخدام سلاسل الإصدار في تكوين volta بالتنسيقات التالية:

  • إصدار دقيق: 16.14.2
  • الإصدار الرئيسي فقط: 16
  • الإصدار الرئيسي والثانوي: 16.14
  • نطاق الإصدار (npm semver): ^16.14.0
  • العلامات: latest، lts

تكوين المشروع المشترك

يمكنك إنشاء تكوين Volta مشترك يمكن أن تمتد إليه مشاريع متعددة. هذا مفيد للمؤسسات التي ترغب في توحيد إصدارات الأدوات بين المشاريع.

التنسيق

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

التنسيق هو نفسه قسم volta في package.json، ولكن في المستوى الجذر لملف JSON.

تكوين المستخدم

يتم تخزين تكوين المستخدم لـ Volta في الدليل الرئيسي لـ Volta:

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

تخزين الأدوات

الأدوات المثبتة مخزنة في دليل منظم:

  • Node.js: ~/.volta/tools/image/node/
  • مديرو الحزم: ~/.volta/tools/image/yarn/، ~/.volta/tools/image/npm/
  • الحزم: ~/.volta/tools/user/packages/

دليل الـ Hooks

الـ hooks المخصصة مخزنة في ~/.volta/hooks/. لمزيد من التفاصيل، راجع قسم الميزات المتقدمة.

متغيرات البيئة

توفر متغيرات البيئة طريقة أخرى لتكوين سلوك Volta. للحصول على مرجع كامل، راجع صفحة متغيرات البيئة.

أولوية التكوين

عند حل إصدار الأداة المراد استخدامه، يتحقق Volta من المصادر بالترتيب التالي:

  1. معاملات سطر الأوامر (مثل، volta run --node 14)
  2. تكوين المشروع في أقرب package.json يحتوي على قسم volta
  3. إصدارات الأدوات الافتراضية للمستخدم (المعينة عبر volta install)
  4. الإصدارات المرفقة (مثل npm المرفق مع Node.js)

أمثلة

تكوين مشروع نموذجي

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

تكوين التمديد

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"  // يتجاوز أي إصدار npm في تكوين التمديد
  }
}

تكوين مساحة العمل

للمشاريع القائمة على مساحة العمل، ينطبق تكوين package.json الجذر على جميع حزم مساحة العمل:

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

// packages/app/package.json - سيستخدم Node.js 16.14.2 و Yarn 1.22.19
{
  "name": "app",
  "version": "1.0.0",
  // لا حاجة لقسم volta هنا
}