I have the following jsfiddle example (check the console) and all you will see is [object Object] instead of person data:
So, basically I have a vuejs instance and a div for v-for to iterate an object
<div id='app'>
<p v-for="person in people[0]">
<span> {{ person.name }}</span>
<i class="fa fa-check"
v-bind:data-identity="person"
@click="addDetail($event)"></i>
</p>
</div>
The problem is that if I echo {{ person }} I can see a JSON data on the page, but if I try to get it in the function addDetail() with e.target.dataset.identity then all I get is [object Object] and not the json data. I have tried JSON.parse and String methods, non of them work.
v-bind:data-identity="person" coverts person to string hence you can't attach an object to dataset
as any object.toString() method returns [Object object] and you are getting the same
try to attach any string like person.name and see if it is reflected in your dataset
https://jsfiddle.net/qthg4Lwm/
hope this will help :)
EDIT: All data attributes are string
read this article
from above article
Each property is a string and can be read and written. In the above case setting article.dataset.columns = 5 would change that attribute to "5".
If you love us? You can donate to us via Paypal or buy me a coffee so we can maintain and grow! Thank you!
Donate Us With