watch: { 'selected.type': function (newSelectedType) { console.log(newSelectedType) }, 'selected.instrument': function (newSelectedinstrument) { console.log(newSelectedinstrument) } }
If you are just trying to compute new data from selected , you can simply use the calculated properties, since Vue data is reactive, the calculated values ββcan also determine data changes.
If you want to use one function to view the entire object, you can use $watch with deep: true :
mounted () { this.$watch('$data.selected', this.onSelectedUpdate, { deep: true }) }
note that '$data.selected' is a string, Vue will '$data.selected' it.
and in your methods:
onSelectedUpdate (newSelected) { console.log(newSelected) }
source share