ref() إنشاء مرجع تفاعلي

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

ref() إنشاء مرجع تفاعلي

تغلّف ref() أي قيمة داخل كائن تفاعلي يُقرأ ويُكتب من خلال ‎.value؛ وتُستخدم للاحتفاظ بالأنواع البدائية (نصوص/أرقام/قيم منطقية) وبالقيم التي تريد استبدالها كوحدة واحدة.

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

📝 الصيغة

import { ref } from "vue"

const count = ref(0)
count.value++          // القراءة والكتابة عبر .value في السكربت
template: {{ count }}  // يُفكّ تلقائيًا في القوالب

⚙️ الوسائط

valueالقيمة الابتدائية من أي نوع؛ وإذا أُهملت تكون undefined

القيمة المُرجعة:كائن تفاعلي (Ref) يحتوي على خاصية .value

▶ مثال

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

المخرجات:

The page shows 'Clicked 0 times'; each click increments the number.

💡 نقاط مهمة

⚠️ تحذير في الشيفرة استخدم دائمًا count.value — فكتابة count++ تعيد ربط المتغير برقم جديد وتُفقده التفاعلية.
💡 نصيحة عند إرجاع ref من setup يُفكّ تلقائيًا في القوالب: اكتب {{ count }} وليس {{ count.value }}.
ℹ️ ملاحظة استخدم ref عندما تحتاج إلى استبدال القيمة كوحدة واحدة، وreactive() للكائنات التي تريد تفاعلية عميقة.
المزيد من الحالات قريباً.

📚 دروس ذات صلة

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

س لماذا لا يمكن الاستغناء عن .value؟
ج لا تستطيع JavaScript تتبّع قراءة وكتابة الأنواع البدائية، لذا يُستخدم كائن غلاف مزوّد بـ getter/setter لالتقاط الوصول — وهذه الخاصية الغلافية هي .value.
س هل تفقد الكائنات داخل ref تفاعليتها؟
ج لا؛ فـ ref(obj) تُنشئ داخليًا وكيًا (Proxy) عميقًا للكائن، لذا تظل التعديلات عبر ‎.value.foo تُطلق التحديثات.
س متى أستخدم ref ومتى أستخدم reactive؟
ج القاعدة الافتراضية هي ref (تقبل أي نوع، وقابلة للاستبدال الكامل، وتحافظ على التفاعلية بعد التفكيك)؛ أما reactive فتصلح للكائنات فقط وتفقد التفاعلية عند التفكيك.
Web-Tutorial.com

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

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

100%