I would like to get an array of the values of a Vue Object.
Object.values(obj) does not work as Vue translates object values to getters/setters: https://v2.vuejs.org/v2/guide/reactivity.html
I would like to get an array of the values of a Vue Object.
Object.values(obj) does not work as Vue translates object values to getters/setters: https://v2.vuejs.org/v2/guide/reactivity.html
It does work (see below). Since you are looking for the whole data object, you can get it by Object.values(this.$data):
new Vue({
el: '#app',
data: {
message: 'Open the console for a better view',
person: {
name: {first_name: 'Alice', surname: 'Smith'},
age: 15
}
},
methods: {
print() {
console.log(Object.values(this.person));
console.log(Object.values(this.person.name));
console.log(Object.values(this.$data));
}
}
})
<script src="https://unpkg.com/vue"></script>
<div id="app">
<p>{{ message }}</p>
<button @click="print">print</button>
</div>