Donc, j'apprends Vue et j'ai passé du temps à traverser les documents et n'avez pas vu la réponse qui résout ma question. Beaucoup de cela est dû à la nomenclature entre l'utilisation de la CLI (que je suis) et non.
J'essaie de le faire afin que lorsque un bouton radio est cliqué, il affiche un div et lorsque l'autre est cliqué, il affiche l'autre. Voici ce que j'ai. P>
Modèle: P>
display: none;
3 Réponses :
Il y a deux problèmes autant que je puisse voir ici:
dans un composant, la touche Par défaut, les valeurs de modèle V sont traitées comme des chaînes afin que votre Data CODE> doit être une fonction et la valeur de la touche code> sélectionnée Dans l'objet renvoyé par la fonction code> code> doit être une valeur booléenne réelle true code> ou false code> (qui sera la valeur initiale) p> xxx pré> true code> et false code> sont en réalité les chaînes "vrai " code> et " faux " code> qui sont à la fois en vérité. Modification de votre code de modèle en ci-dessous (ou à l'aide d'un numéro ou d'une valeur de chaîne à la place), corrigez-le P> <div v-show="selected === 'true'" id="ta-multDays">
<textarea rows="10" cols="80" name="multDays" type="text" />
</div>
Le problème est que la valeur de Le watcher suivant: p> sélectionné code> est une chaîne, alors que vous vous attendez à ce qu'elle soit booléenne. selected changed to true which is a string
selected changed to false which is a string
Merci, je l'ai eu un peu avant de poster l'aide mais merci. Je pensais que l'utilisation de la liaison avec le type le convertit, mais après avoir joué avec elle, j'ai vu qu'il s'agissait d'une ficelle. Merci beaucoup de votre aide !!!
Je l'ai résolu en le modifiant à partir d'un "V-show" à "V-Si" PRE> XXX PRE>
puis le DIV à afficher comme suit: P>
<div v-if="selected === 'multipleDays'" id="ta-multDays">
<textarea rows="10" cols="80" name="" type="text" />
</div>
<div v-if="selected === 'onlyOneDay'" id="i-oneDay">
<input type="text" name="">
</div>
Cela peut être un détail, mais je suggère d'utiliser
V-si code> etv-else code> au lieu dev-show code> dans votre cas. De cette façon, si vous devez modifier les conditions, vous n'aurez qu'une ligne à modifier au lieu de 2, et si la condition devient longue, le code sera plus simple.