shallowReadonly() وكيل ضحل للقراءة فقط
آخر تحديث: 2026-10-22
shallowReadonly() وكيل ضحل للقراءة فقط
تجعل shallowReadonly() خصائص المستوى الأول فقط للقراءة فقط، وتظل الكائنات المتداخلة قابلة للتعديل.
| المجموعة | التفاعلية: المتقدم |
|---|---|
| النوع | API |
| النطاق | داخل المكوّن |
| إصدار Vue | 3.0+ |
| دعم SSR | مدعوم |
📝 الصيغة
const cfg = shallowReadonly({ theme: 'dark', nested: {} })
cfg.theme = 'light' // ❌ تُحجب
cfg.nested.x = 1 // ✅ مسموح (المتداخل ليس للقراءة فقط)
⚙️ الوسائط
| target | كائن |
|---|
القيمة المُرجعة:وكيل ضحل للقراءة فقط
▶ مثال
عدّل الشيفرة أدناه وشاهد النتيجة مباشرة:
المخرجات:
The top-level write is blocked with a warning; the nested write goes through.
💡 نقاط مهمة
⚠️ تحذير القراءة فقط الضحلة لا تعني الأمان: تظل البيانات المتداخلة قابلة للتعديل، فلا تستخدمها لحماية البيانات.
ℹ️ ملاحظة سيناريوهات قليلة تتطلبها: ثوابت في المستوى الأول مع مراجع متداخلة قابلة للتغيير (مثل حاوية تخزين مؤقت).
🏷️ المتقدم ذات صلة
💡 حالات ذات صلة
المزيد من الحالات قريباً.
📚 دروس ذات صلة
❓ الأسئلة الشائعة
س ما الفرق بينها وبين readonly؟
ج تقفل طبقة واحدة فقط: قراءة وكتابة الكائنات المتداخلة كالمعتاد، بينما readonly تقفل جميع المستويات بشكل متكرر.
س ما سيناريوهات الاستخدام الشائعة؟
ج نادرة، وتظهر عادة في واجهات API داخلية حساسة للأداء وتحتاج دفاعًا ضحلًا.
س هل يمكن كشفها؟
ج تُعيد isReadonly قيمة true، وتُعطي isProxy كذلك true.