慕桂英3389331
如果data里有个变量,watch里只要有名字一样的变量,就可以观测到变量变化。比如这个例子里的“a”,"b","c". 一般使用“a”这种就可以,val是变化了的值,oldVal是改变前的值。如果为了发现对象内部值的变化,可以在选项参数中指定 deep: true ,就是例子里“c”这种1234567891011121314151617181920var vm = new Vue({ data: { a: 1, b: 2, c: 3 }, watch: { a: function (val, oldVal) { console.log('new: %s, old: %s', val, oldVal) }, // 方法名 b: 'someMethod', // 深度 watcher c: { handler: function (val, oldVal) { /* ... */ }, deep: true } }})vm.a = 2 // -> new: 2, old: 1