Вы можете добавить showNote
в user_leav
<div v-for="user_leav in user_leave_filtered" v-bind:key="user_leav.id">
<div class="container">
<div v-if="user_leav.note" v-on:click="user_leav.showNote = !user_leav.showNote">
<h4>Note</h4>
</div>
<div class="note" v-if="user_leav.showNote">
<p>{{ user_leav.note }} </p>
</div>
</div>
</div>
В противном случае вам придется определить showNote
как массив
<div v-for="(user_leav, index ) in user_leave_filtered" v-bind:key="user_leav.id">
<div class="container">
<div v-if="user_leav.note" v-on:click="showNote[index] = !showNote[index]">
<h4>Note</h4>
</div>
<div class="note" v-if="showNote[index]">
<p>{{ user_leav.note }} </p>
</div>
</div>
</div>
Для второго решения:вам нужно будет сделать наблюдатель для «повторной инициализации» массива showNote
каждый раз, когда фильтры меняются.
watch: {
user_leave_filitered(newVal) {
// Requires polyfill
this.showNote = new Array(newVal.length).fill(false)
// Or
this.showNote = new Array(newVal.length);
for( note of this.showNote ) {
note = false;
}
}
}
Имейте в виду: Array.prototype.fill не поддерживается в Edge, поэтому потребуется полифилл.