Je crée une table à l'aide de Vue.js et je souhaite définir un événement onClick pour chaque ligne transmettant contactID. Voici le code:
<tr v-for="item in items" class="static"
v-bind:class="{'evenRow': item.oddeven=='1', 'oddRow': item.oddeven=='0' }"
@click="addToCount('{item.contactID}')"
>
<td>{{item.contactName}}</td>
<td>{{item.recipient}}</td>
</tr>
En cliquant sur une ligne, il appelle addToCount()
, qui fonctionne. Je veux passer item.contactID
à addToCount()
. Quelqu'un pourrait-il suggérer la syntaxe correcte pour cela? Merci
Lorsque vous utilisez les directives Vue, les expressions sont évaluées dans le contexte de Vue. Vous n'avez donc pas besoin d'envelopper les éléments dans {}
.
@click
n'est qu'un raccourci pour la directive v-on:click
, de sorte que les mêmes règles s'appliquent.
Dans votre cas, utilisez simplement @click="addToCount(item.contactID)"
Utilisez simplement une expression Javascript normale, pas de {}
ni rien de nécessaire:
@click="addToCount(item.contactID)"
si vous avez également besoin de l'objet event:
@click="addToCount(item.contactID, $event)"