'change the data of a specific v-model from a v-for in vue
Hello good day vue enthusiast, just want to ask how can i control the behavior of a single v-model inside a v-for . right now when i change a radio button to cites all v-if is equals 'cites' i only want the specific row to be set as 'cites'
right now when i change a single everything is changing. here is my code. thanks in advance.
<div class="card mb10" v-for="(animal,index) in animals">
<div class="card-body">
<div class="row">
<div class="col-md-6">
<label>Type</label>
<input type="radio" name="animal_type[]" value="noncites" v-model="at">Non Cites <input type="radio" name="animal_type[]" value="cites" v-model="at">Cites
</div>
</div>
<br>
<div class="card mb10" v-for="(animal,index) in animals">
<div class="card-body">
<div class="row">
<div class="col-md-6">
<div class="form-group">
<label>TOTAL MONETARY VALUE in USD: </label>
<input type="number" name="monetary_value" class="form-control" step="0.1" min="1">
</div>
</div>
</div>
<div class="row">
<div class="col-md-6">
<label>Type</label>
<input type="radio" name="animal_type[]" value="noncites" v-model="at">Non Cites <input type="radio" name="animal_type[]" value="cites" v-model="at">Cites
</div>
</div>
<br>
<div v-if="at =='cites'">
<p>cites</p>
</div>
</div>
</div>
</div>
here is my vue code:
new Vue({
el: '#app',
data() {
return {
animals:[0],
counter: 0,
at:[]
}
},
methods: {
addAnimals(){
this.counter = this.counter + 1;
this.animals.push(this.counter);
console.log(this.animals);
},
deleteAnimals(index){
console.log(index);
this.animals.splice(index, 1);
console.log(this.animals);
}
}
})
Sources
This article follows the attribution requirements of Stack Overflow and is licensed under CC BY-SA 3.0.
Source: Stack Overflow
| Solution | Source |
|---|
