什么是Vue.nextTick()
白话:等你dom加载完毕以后再去调用nextTick()里面的数据内容
它是Vue的核心方法之一,官方文档解释如下:
$nextTick 是在下次DOM更新循环结束之后执行延迟回调。在修改数据之后立即使用这个方法,获取更新后的DOM。
触发时机:
在同一事件循环中的数据变化后,DOM完成更新,立即执行Vue.nextTick()的回调。
执行顺序如下:
同一事件循环中的代码执行完毕=》DOM更新=》nextTick callback触发
使用场景
在进行获取数据后,需要对新视图进行下一步操作或者其他操作时,发现获取不到 DOM。
mounted里面加nextTick()可以吗?
可以,但是nextTick()加在这有点多余,mounted本身就代表是加载完后执行的。
mounted() {
// this.$nextTick(() => {
// 我只是一个卑微的方法,不重要
this.drawPieChart();
// });
}