Vue: Vue mettant à jour les données avant ou après l'événement de clic selon le navigateur

Créé le 22 juin 2016  ·  3Commentaires  ·  Source: vuejs/vue

Version de vue.js

v1.0.20

Lien de reproduction

http://jsfiddle.net/5sH6A/468/

Étapes à reproduire

Chrome/Firefox se comportent d'une manière tandis qu'IE 11/Edge se comportent d'une manière différente.

Chrome/Firefox - Si vous cliquez sur la case à cocher en la faisant passer d'un état faux à vrai, vue NE met PAS à jour la valeur row.selected à vrai AVANT l'événement de clic.

IE 11/Edge - Si vous cliquez sur la case à cocher en la faisant passer d'un état faux à vrai, vue met à jour la valeur row.selected à vrai AVANT l'événement de clic.

la même chose va du vrai au faux états

Commentaire le plus utile

Nous avons résolu ce problème en enveloppant notre logique du gestionnaire de changement dans Vue.nextTick . Ensuite, vous accédez toujours aux valeurs mises à jour.
Une autre solution pourrait être un gardien sur la propriété.

Tous les 3 commentaires

Différents navigateurs déclenchent des événements change et click dans des ordres différents, ce n'est pas quelque chose que Vue peut changer et Vue n'est pas responsable de normaliser ce comportement. Vous devriez écouter l'événement change au lieu de click .

Nous avons résolu ce problème en enveloppant notre logique du gestionnaire de changement dans Vue.nextTick . Ensuite, vous accédez toujours aux valeurs mises à jour.
Une autre solution pourrait être un gardien sur la propriété.

La réponse acceptée devrait être celle d'Evan. Cela fonctionne dans tous les cas.

Cette page vous a été utile?
0 / 5 - 0 notes

Questions connexes

bfis picture bfis  ·  3Commentaires

robertleeplummerjr picture robertleeplummerjr  ·  3Commentaires

julianxhokaxhiu picture julianxhokaxhiu  ·  3Commentaires

WolfgangFellger picture WolfgangFellger  ·  3Commentaires

aviggngyv picture aviggngyv  ·  3Commentaires