Vue Academy · درس

النشر إلى npm والإصدار الدلالي

حقول package.json ‏(main وmodule وexports)، وسجلات التغييرات، وsemantic-release، وسير عمل npm publish

الدرس 4 من 413 خطوة

النشر إلى npm والإصدار الدلالي درس مجاني في Vue Academy على CoddyKit. هذا هو الدرس 4 من أصل 4. يمكنك قراءة الدرس كاملاً أدناه مجاناً — ثم تمرن عليه مباشرة في المتصفح باستخدام محرر أكواد مدمج ومدرس ذكاء اصطناعي متاح 24/7. هذا الدرس جزء من مسار التعلم في Vue Academy، وتقدمك يتزامن عبر الويب وتطبيق CoddyKit. تتضمن دورة Vue Academy 4 دروس في المجموع.

الاستعداد للنشر

يجعل النشر مكتبتك قابلة للتثبيت عبر npm install. وقبل ذلك، يجب أن يصرّح package.json بنقاط الإدخال بشكل صحيح، كما يجب أن تتحكم في الملفات التي ستُنشر.

main وmodule

يشير main إلى بناء CommonJS للأدوات الأقدم، بينما يشير module إلى بناء ESM حتى تختار أدوات التجميع الحديثة الإصدار القابل لاقتطاع الشجرة.

{
  "main": "./dist/my-ui-lib.cjs.js",
  "module": "./dist/my-ui-lib.es.js"
}

خريطة exports

يحدّد الحقل الحديث exports نقاط إدخال مشروطة. وله الأولوية على main/module، كما يتحكم في الوصول إلى المسارات الفرعية.

{
  "exports": {
    ".": {
      "types": "./dist/index.d.ts",
      "import": "./dist/my-ui-lib.es.js",
      "require": "./dist/my-ui-lib.cjs.js"
    },
    "./style.css": "./dist/style.css"
  }
}

التصديرات المشروطة

تتيح شروط import وrequire وtypes لـ Node وأدوات التجميع تحديد الملف المناسب لـ ESM وCommonJS وTypeScript على الترتيب.

التحكم في الملفات المنشورة

استخدم حقل files لتحديد قائمة مسموح بها لما سيُنشر، أو استخدم .npmignore لتحديد قائمة محظورة. إن نشر dist واستبعاد المصدر والاختبارات يحافظ على صغر حجم الحزمة.

{
  "files": ["dist"]
}

.npmignore

إذا كنت تفضّل قائمة حظر، فإن .npmignore يستبعد الملفات حتى عند عدم ضبط حقل files. ومن دون أيٍّ منهما، ينشر npm كل شيء تقريبًا.

# .npmignore
src
tests
vite.config.ts
*.log

معاينة npm pack

شغّل npm pack لإنشاء أرشيف tarball وفحص ما سيُنشر بالضبط؛ فهذا فحص أمان مهم قبل الإطلاق.

npm pack
# inspect the listed files; nothing secret should appear

الإصدار الدلالي

يستخدم SemVer الصيغة MAJOR.MINOR.PATCH. ارفع إصدار patch لإصلاحات الأخطاء المتوافقة مع الإصدارات السابقة، وminor للميزات المتوافقة معها، وmajor للتغييرات الكاسرة للتوافق.

أوامر npm version

يرفع الأمر npm version رقم الإصدار في package.json وينشئ وسم git في خطوة واحدة.

npm version patch   # 1.0.0 -> 1.0.1
npm version minor   # 1.0.1 -> 1.1.0
npm version major   # 1.1.0 -> 2.0.0

npm publish

يرفع npm publish الحزمة. وتحتاج الحزم العامة ذات النطاق إلى الخيار --access public في المرة الأولى.

npm publish --access public

prepublishOnly وdist-tag

يضمن البرنامج النصي prepublishOnly تشغيل بناء حديث قبل النشر، بينما ينشر --tag next الإصدارات التجريبية دون تغيير الوسم latest.

{
  "scripts": {
    "prepublishOnly": "npm run build"
  }
}
// npm publish --tag next

تحقق سريع

أضفت خاصية اختيارية جديدة دون تعطيل الاستخدام الحالي. ما نوع رفع الإصدار المناسب؟

مراجعة

اضبط main وmodule وخريطة exports مشروطة (import/require/types)، وتحكم في الملفات المنشورة باستخدام files أو .npmignore. عاين الحزمة باستخدام npm pack، ثم ارفع الإصدارات وفق SemVer باستخدام npm version patch/minor/major وانشرها باستخدام npm publish (مع إضافة --access public للحزم ذات النطاق).

البدء مجانًا

تعلم HTML مع معلم ذكاء اصطناعي — مجانًا

اكتب وقم بتشغيل أكوادك الفعلية في المتصفح، واحصل على مساعدة فورية من معلم ذكاء اصطناعي متاح 24/7، واستمر من حيث توقفت على الويب أو في التطبيق.

الدورات
42
الدروس
156

الأسئلة الشائعة

هل درس «النشر إلى npm والإصدار الدلالي» مجاني؟

نعم — نص درس «النشر إلى npm والإصدار الدلالي» كامل متاح مجاناً هنا على الويب. لتمرينه بشكل تفاعلي (محرر أكواد مدمج ومدرس ذكاء اصطناعي متاح 24/7) وفتح باقي دورة Vue Academy، انتقل إلى CoddyKit PRO. تتضمن دورة Vue Academy 4 دروس في المجموع.

ماذا ستتعلم في «النشر إلى npm والإصدار الدلالي»؟

حقول package.json ‏(main وmodule وexports)، وسجلات التغييرات، وsemantic-release، وسير عمل npm publish تتمرن على Vue Academy مع أكواد عملية تشغلها مباشرة في المتصفح، ومدرس ذكاء اصطناعي متاح 24/7 يجيب على أسئلتك أثناء عملك.

هل أحتاج إلى خبرة سابقة لأبدأ Vue Academy؟

لا تُشترط خبرة سابقة. Vue Academy على CoddyKit منظم للمبتدئين حتى المتقدمين، لذا يمكنك البدء من هنا أو من البداية والتقدم بسرعتك الخاصة. هذا هو الدرس 4 من أصل 4.

كم من الوقت يستغرق درس «النشر إلى npm والإصدار الدلالي»؟

معظم دروس CoddyKit تستغرق حوالي 5–10 دقائق. كل منها موجز وتفاعلي، لذا تحرز تقدماً مستمراً وتستأنف من حيث توقفت عبر الويب والتطبيق.

هل يمكنني كتابة وتشغيل أكواد في درس Vue Academy هذا؟

نعم. كل درس في Vue Academy يتضمن محرر أكواد مدمج، لذا تكتب وتشغل أكواداً حقيقية مباشرة في متصفحك وتحصل على تعليقات فورية من الذكاء الاصطناعي — بدون إعداد محلي.

جميع الدروس في هذه الدورة

  1. إعداد وضع المكتبة في Vite
  2. تصريحات TypeScript لمكتبات المكوّنات
  3. ‏Tree-Shaking والاستيراد التلقائي
  4. النشر إلى npm والإصدار الدلالي
← العودة إلى Vue Academy