تكرار السؤال: …
الإجابة المختصرة
InheritedWidget يشارك قيمة عبر الشجرة، وdidChangeDependencies تنبه State عندما تتغير dependency سجّلها عبر context.
الشرح
استخدمه لقيمة مشتركة تتغير مع الزمن مثل Theme أو locale، وسجّل القراءة في build أو didChangeDependencies. لا تجعل InheritedWidget مخزنًا عامًا لكل state؛ اجعل نطاقه واضحًا واستعمل API متخصصة عندما تكبر المتطلبات.
أخطاء شائعة
- قراءة dependency في initState فقط رغم أنها قد تتغير.
- تمرير كل بيانات التطبيق عبر InheritedWidget واحد ضخم.