أنا أرسل ...
[x] bug report
السلوك الحالي
نظرًا لأنه تم تسمية Observer
بلقب "التغييرات" أشعر أن AbstractControl.statusChanges
يجب أن يصدر قيمًا فقط عندما تتغير الحالة بالفعل. بدلاً من ذلك ، يبدو أنه يعمل عندما يتم تشغيل valueChanges
باستثناء حالة _status_ كقيمة لمعاودة الاتصال.
السلوك المتوقع / المطلوب
يجب أن يتم إطلاقه فقط عندما تتغير الحالة .
استنساخ المشكلة
http://plnkr.co/edit/UTPrVls36cTQjPpwYN2Q
ما هو الدافع / حالة الاستخدام لتغيير السلوك؟
لقد وجدت ذلك من خلال تحديد منطقة بطيئة إضافية في تطبيقنا والتي تسببت في بعض تأخر واجهة المستخدم ، لذلك ستكون شكواي الرئيسية هي الأداء.
ومع ذلك ، فمن السهل جدًا إضافة عامل تشغيل distinctUntilChanged
إلى المشترك لإصلاح المشكلة ، لكن التوقع هو أنك لن تحتاج إلى ذلك ، لذا من السهل تفويتها بدون اختبار.
من فضلك أخبرنا عن بيئتك:
حاليًا يصدر statusChanges
كل مرة يتم فيها حساب الحالة ، وليس بالضرورة عند تغييرها. أستطيع أن أرى كيف يمكن أن يكون هذا مضللاً. ومع ذلك ، فإن تغيير سلوكه سيكون بمثابة تغيير كبير جدًا لجميع المستخدمين. ربما يمكننا إضافة باعث حدث جديد للتمييز بين الاثنين. أود التعرف على من سيستخدم هذا لتحديد الأولوية. المزيد من الناس يشعرون بألم هذا؟ استخدم حالات؟
التعليق الأكثر فائدة
حاليًا يصدر
statusChanges
كل مرة يتم فيها حساب الحالة ، وليس بالضرورة عند تغييرها. أستطيع أن أرى كيف يمكن أن يكون هذا مضللاً. ومع ذلك ، فإن تغيير سلوكه سيكون بمثابة تغيير كبير جدًا لجميع المستخدمين. ربما يمكننا إضافة باعث حدث جديد للتمييز بين الاثنين. أود التعرف على من سيستخدم هذا لتحديد الأولوية. المزيد من الناس يشعرون بألم هذا؟ استخدم حالات؟