先说本文的结论:watch的处理函数是在同步函数都执行完毕之后,在浏览器更新DOM之前执行
首先来看官方
这样子,实际上只会有一个输出:test 10
接着,如果我们在有这样一个html结构:
Watch的结构如上图所示,this.$refs[‘test-watch’]的输出结果是undefined。
如果我们在调用testFun后,执行一些其他的指令,也会发现是后面的指令先执行,再执行watch处理函数。但是控制台是先显示watch之后,再输出test。
所以可以看出,watch的处理函数是在同步函数都执行完毕之后,在浏览器更新DOM之前执行