TGViewer
Flutter | Mahmoud Azab Flutter | Mahmoud Azab @flutter_apps99 · 9.44K subscribers
Post #2385 3.99K
ليه بنستخدم Equatable مع ال flutter_bloc ؟
لما بتشتغل بـ Bloc بتحتاج تقارن بين ال Objects، وخصوصًا الـ States والـ Events. هنا بييجي دور Equatable.

المشكلة الأساسية:
بشكل افتراضي، دارت بتقارن الكائنات بناءً على مكانها في الذاكرة، مش بناءً على القيم اللي جواها. يعني لو عندك حالتين بنفس القيم، دارت هتشوفهم مش متطابقين لأنهم كائنين مختلفين في الذاكرة.

ده ممكن يعمل مشاكل مع Bloc، لأنه بيعيد بناء الواجهة (UI) حتى لو البيانات مفيهاش تغيير فعلي.

الحل: استخدام Equatable
Equatable بيخلي Dart تقارن ال Objects بالقيم اللي جواها بدل ما تعتمد على مكانها في الذاكرة.
الخلاصة:

Equatable بيمنع إعادة بناء الواجهة بدون داعي.
بيخلي Bloc يعرف إن الحالة مفيهاش تغيير حقيقي، فميعملش إعادة بناء (Rebuild).
بيخلي الكود أنضف وأسهل في التعامل مع الـ States والـ Events.
لو بتشتغل بـ Bloc أو أي State Management، استخدم Equatable عشان الأداء يكون أسرع والكود أنضف.
  • ❤‍🔥 18
  • 🔥 5
More from @flutter_apps99
  1. Sep 27, 2026No PNGs. No SVGs. No Lottie files. Our Maab onboarding is pure canvas , built with CustomP…
  2. Sep 22, 2026Splash screen for مآب | Maab — a fully custom animated Quran experience built from scratch…
  3. Sep 2, 2026https://azabcodes-portfolio.web.app/
  4. Aug 6, 2026🚀 ارتقِ بتجربة تحديث تطبيقك مع "app_upgrade_checker"! دعم 7 لغات، وإمكانية جلب أحدث الإصد…
  5. Aug 5, 2026السلام عليكم ورحمة الله وبركاته باكدج جديده عشات تعمل Pick للصور أو الفيديوهات والملفات بن…
  6. Jul 24, 2026مشكله ربما تقابلكم وأنا شغال على مشروع تحميل الفييدوهات قابلتني مشكلة مع Package photo_man…
Threads Profile ViewerView any public Threads profile without an account.Open ThreadLook →Writing with AI? Make it sound human.Metric37 rewrites AI drafts so they read naturally. Free AI detector, 1,500 words free.Try Metric37 →