I'm trying to watch properties on a vue.js
object, but i'm not getting the result that i want, my code is the following:
var vueTable = new Vue({
el: '#vue-table',
data: {
filters: {},
},
watch: {
filters: {
handler: function () {
console.log('watched');
},
deep: true
}
}
}
And i have a v-model
on an input like so:
<input class="form-control" v-model="filters.name">
Now when the page loads it logs watched
in the console just once, whenever i change the input it doesn't log anything.
Yet when i put vueTable.filters = {name: 'something'};
after the table initalization it will trigger on every change.
Is this unexpected behaviour? or do we have to define all our properties in order for them to be watched?