provide توفير البيانات للأحفاد (بأسلوب الخيارات)
آخر تحديث: 2026-10-22
provide توفير البيانات للأحفاد (بأسلوب الخيارات)
يوفّر خيار provide البيانات للأحفاد على هيئة كائن أو دالة: صيغة الكائن توفّر قيماً ثابتة، وصيغة الدالة تصل إلى حالة المكوّن عبر this.
| المجموعة | الخيارات: التركيب ومتنوع |
|---|---|
| النوع | خيار |
| النطاق | داخل المكوّن |
| إصدار Vue | 3.0+ |
| دعم SSR | مدعوم |
📝 الصيغة
export default {
data() { return { theme: "dark" } },
provide() {
return { theme: this.theme } // انتبه: قيمة لقطة
}
}
⚙️ الوسائط
| value | كائن أو دالة تُعيد كائناً (صيغة الدالة يمكنها استخدام this؛ ومرّر كائناً تفاعلياً عند الحاجة للتفاعلية) |
|---|
القيمة المُرجعة:بلا قيمة مُعادة
▶ مثال
عدّل الشيفرة أدناه وشاهد النتيجة مباشرة:
المخرجات:
The deep child shows 'Injected theme: dark'.
💡 نقاط مهمة
⚠️ تحذير كائنات literals توفّر لقطة: مرّر كائن ref/reactive لنقل التفاعلية.
💡 نصيحة تُوصي الفرق باستخدام أسماء المفاتيح نفسها التي في provide بواجهة التركيب، لسهولة الترحيل.
ℹ️ ملاحظة لا يدعم provide بأسلوب الخيارات فروق كتابة مفاتيح Symbol — استخدم الكائن مباشرة.
🏷️ التركيب ومتنوع ذات صلة
💡 حالات ذات صلة
المزيد من الحالات قريباً.
📚 دروس ذات صلة
❓ الأسئلة الشائعة
س لماذا لا تتحدث قيمة data الموفَّرة؟
ج صيغة الكائن تأخذ القيمة مرة واحدة عند التهيئة (لقطة)؛ بدّل بتوفير كائن تفاعلي أو إرجاع دالة.
س هل يمكن خلطه مع واجهة التركيب؟
ج نعم: آلية provide/inject التحتية واحدة، ومطابقة أسماء المفاتيح تتيح الحقن المتبادل.
س متى تُستخدم صيغة الدالة؟
ج استخدمها لإرجاع الكائن عند الحاجة للوصول إلى this (data/methods).