تكرار السؤال: …
الإجابة المختصرة
local state تخص Widget أو feature صغيرة، أما shared state فتحتاجها أجزاء متعددة أو شاشات مختلفة وتتطلب مالكًا ونطاقًا أوضح.
الشرح
ابدأ بأقرب owner للحالة؛ لا ترفع قيمة لا يحتاجها غير child واحد. اجعل shared state صريحة في حدود feature، واحتفظ بالحالة المؤقتة مثل اختيار tab محلية ما لم يوجد سبب حقيقي لمشاركتها.
أخطاء شائعة
- وضع كل state في singleton عالمي.
- اعتبار كل قيمة داخل الشاشة app state.