0
votes

Comment désactiver correctement le bouton en fonction de la condition dans VUE

J'essaie de faire valoir l'objet initial et des valeurs spécifiques à l'objet mis à jour, de sorte que le même bouton doit être désactivé. Cependant, il semble que même après le changement de changement est désactivé: xxx

Qu'est-ce qui ne va pas et pourquoi cela ne change pas la valeur booléenne?


0 commentaires

3 Réponses :


0
votes

Vous ne montrez pas comment vous instanciez vos données de composant, il est donc difficile de voir s'il existe une erreur logique.

En général, cette méthode fonctionne, si elle est utilisée comme ceci: p>

computed: {
  setDisabled: function(){
        //logic here
   }
}


0 commentaires

1
votes

La fonction setdisabled code> que vous avez définie est exécutée une fois lorsque le composant est rendu mais pas lorsque les données du composant changent.

Vous devez déplacer setdisabled CODE> (et renommer IT à BASTONDISABLE CODE> Pour plus de clarté) aux propriétés calculées du composant. De cette façon, il sera mis à jour lorsque Data ​​code> ou accessoires code> est mis à jour dans le composant: p> xxx pré>

et utilisez-le comme ça Dans HTML: P>

<!-- No parenthesis when using a computed property -->
<button :disabled="buttonDisabled"> ACTION </button>


2 commentaires

Pouvez-vous montrer comment vous affectez SELECTEYITEM et sélectionnInitial ? Vue détecter les modifications de référence afin que vous puissiez modifier les propriétés du sélectionnée (code> SELECTEMITEM mais pas l'objet lui-même et VUE ne le détecte pas. Je soupçonne cette erreur


Je suppose que vous avez raison c'est le cas et comment peut-on résoudre dans ce cas?



0
votes

Vous pouvez également faire tout le monde dans le modèle. En fonction de la définition des variables.

<button :disabled="selectedItem.color === selectedItemInitial.color">Click</button>


0 commentaires