Vue: Keep-Alive à l'intérieur de la transition ne fonctionne pas avec include

Créé le 31 mars 2017  ·  4Commentaires  ·  Source: vuejs/vue

Version

2.2.6

Lien de reproduction

https://jsfiddle.net/50wL7mdz/24930/

Étapes à reproduire

Cliquez sur le bouton "Changer de vue".

Qu'est-ce qui est attendu ?

L'état de la vue "accueil" aurait dû être conservé lors du passage à l'autre vue de connexion.

Que se passe-t-il réellement ?

Au lieu de cela, la vue « accueil » est recréée à chaque fois.


Si je supprime l'option include="home" de keep-alive, cela fonctionne comme prévu ou si je supprime l'option mode="out-in" du nœud de transition, cela fonctionne également comme prévu.
J'ai débogué cela et il semble que chaque fois qu'il change de composant, la montre "include" est en quelque sorte déclenchée avec un paramètre non défini comme val, puis elle est déclenchée à nouveau avec la valeur "home" correcte mais d'ici là, le premier déclencheur a déjà supprimé le nœud domestique du cache.

bug

Tous les 4 commentaires

Pour utiliser l'option include, vous devez spécifier la propriété name pour le(s) composant(s). Cela devrait également être expliqué dans la doc.

En fait, oubliez ça, ça devrait marcher...

En attendant, vous pouvez utiliser une exclusion avec le reste des composants comme solution de contournement

@posva Avez-vous une idée de la raison pour laquelle le cache est invalidé lorsque j'utilise include ?

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