الإصدار 1.0.20
http://jsfiddle.net/5sH6A/468/
يتصرف Chrome / Firefox بطريقة واحدة بينما يتصرف IE 11 / Edge بطريقة مختلفة.
Chrome / Firefox - إذا قمت بالنقر فوق خانة الاختيار لتغييرها من حالة خطأ إلى حالة صحيحة ، فلن تقوم vue بتحديث row.selected value إلى true قبل حدث النقر.
IE 11 / Edge - إذا قمت بالنقر فوق خانة الاختيار لتغييرها من حالة خاطئة إلى حالة صحيحة ، فسيقوم vue بتحديث الصف. القيمة المحددة إلى true قبل حدث النقر.
نفس الشيء ينتقل من حالة صحيحة إلى خاطئة
تعمل المتصفحات المختلفة على تشغيل أحداث change
و click
في طلبات مختلفة ، وهذا ليس شيئًا يمكن لـ Vue تغييره ولا Vue مسؤولة عن تطبيع هذا السلوك. يجب أن تستمع إلى حدث change
بدلاً من click
.
لقد حللنا هذه المشكلة عن طريق تغليف منطقنا لمعالج التغيير بـ Vue.nextTick
. ثم يمكنك الوصول دائمًا إلى القيم المحدثة.
حل آخر يمكن أن يكون مراقب على الممتلكات.
يجب أن تكون الإجابة المقبولة هي إجابة إيفان. هذا يعمل في كل حالة.
التعليق الأكثر فائدة
لقد حللنا هذه المشكلة عن طريق تغليف منطقنا لمعالج التغيير بـ
Vue.nextTick
. ثم يمكنك الوصول دائمًا إلى القيم المحدثة.حل آخر يمكن أن يكون مراقب على الممتلكات.