Maison > Questions et réponses > le corps du texte
P粉4211197782023-08-31 15:02:18
Pour afficher uniquement la zone de saisie lorsque vous appuyez sur le bouton, vous devez utiliser v-if
et vérifier si la clé existe dans le projet.
Je vais vous donner un exemple pour description
mais vous pouvez l'appliquer à n'importe quelle zone de saisie de votre choix.
Donc, lorsque vous ajoutez un nouvel article, n'ajoutez pas de description
comme ceci :
methods: { addInvoice() { this.invoiceItems.push({ name: "", quantity: 0, unit_price: 0, vat_rate: 18, net_total: 0, }); }, },
Et vérifiez si item.description
existe dans l'entrée
de item.description
是否存在于 description
的 input
:
<div class="col-md-2"> <input type="text" v-if="item.description !== undefined" v-model="item.description" placeholder="description"> </div> ... <button class="btn btn-primary btn-sm" @click="addDesc(index)" >Add Description</button> ... <div class="col-md-2"> <button class="btn btn-danger btn-sm" @click="deleteDesc(index)" >Delete Desc.</button> </div>La méthode
addDesc
ajoutera la clé au projet et la définira vide :
addDesc(index){ Vue.set(this.invoiceItems[index], "description", ""); }La méthode
deleteDesc
supprimera complètement la clé du projet :
deleteDesc(index){ Vue.delete(this.invoiceItems[index], "description"); }
Maintenant, lorsque vous cliquez sur le bouton ajouter une description
, la zone de saisie add description
按钮时,description
输入框将出现,当您点击 delete description
按钮时,description
apparaîtra, et lorsque vous cliquez sur le bouton supprimer la description
, la zone de saisie