emits التصريح بالأحداث المُطلَقة

آخر تحديث: 2026-10-22

emits التصريح بالأحداث المُطلَقة

يصرّح خيار emits بالأحداث التي يُطلقها المكوّن نحو المكوّن الأب، فيؤدي دور التوثيق والتحقق في وقت التشغيل (وتُصدَر تحذيرات للأحداث غير المصرّح بها).

المجموعةالخيارات: الحالة
النوعخيار
النطاقداخل المكوّن
إصدار Vue3.0+
دعم SSRمدعوم

📝 الصيغة

export default {
  emits: ["change", "submit"],
  methods: {
    fire() { this.$emit("change", 1) }
  }
}

⚙️ الوسائط

valueمصفوفة أو كائن: الصيغة الكائنية تكتب دالة تحقق (payload) => boolean

القيمة المُرجعة:بلا قيمة مُعادة (يُطلَق عبر this.$emit)

▶ مثال

عدّل الشيفرة أدناه وشاهد النتيجة مباشرة:

المخرجات:

Clicking shows 'Message received: from child'.

💡 نقاط مهمة

💡 نصيحة بعد التصريح تتعرّف بيئة التطوير وأدوات المطور على الأحداث، ويحصل قالب المكوّن الأب على تلميحات أيضاً.
⚠️ تحذير معلومة متعلقة بـ v-model: يجب كتابة update:modelValue ضمن emits أيضاً لتفادي التحذير.
ℹ️ ملاحظة يُنصح بأسماء أحداث بصيغة kebab-case (حالة أحرف خصائص HTML غير حساسة، وستُحوَّل camelCase إلى أحرف صغيرة).
المزيد من الحالات قريباً.

📚 دروس ذات صلة

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

س ماذا يحدث دون تصريح emits؟
ج تبقى الوظيفة تعمل، لكن بيئة التطوير تُصدر تحذيراً، وقد تهبط الخصائص الممررة خطأً كمستمعي أحداث.
س هل يمكن تمرير عدة وسائط؟
ج نعم: $emit('change', a, b)، ويستلمها معالج المكوّن الأب بالترتيب.
س هل يمكن أن تكون أسماء الأحداث بـ camelCase؟
ج غير مستحسن: تُحوَّل إلى أحرف صغيرة في قوالب DOM، و kebab-case هي الأضمن.
Web-Tutorial.com

فريق Web-Tutorial التقني

منصة دروس برمجية يديرها عدة مطورين. كل درس يتم كتابته ومراجعته بواسطة مطورين متخصصين في المجال. نعمل على ضمان دقة وموثوقية المحتوى — إذا لاحظت أي مشكلة، فيرجى إخبارنا.

100%