Vue中的$nextTick()

概念

在下次 DOM 更新循环结束之后执行延迟回调

原理

vue是异步渲染的,当data改变之后,DOM不会立刻被渲染,页面渲染时会将data的修改做整合,多次data修改只会做整合最后一次性渲染出来,这也是异步渲染的原因。只有异步渲染才可以实现整合操作

使用场景

有时候我们想要在created 中获取到dom元素,就可以使用$nextTick()
改变数据之后立刻获得dom节点,进行逻辑操作

created(){
    let that=this;
    that.$nextTick(function(){  //不使用this.$nextTick()方法会报错
        that.$refs.aa.innerHTML="created中更改了按钮内容";  //写入到DOM元素
    });
}

你可能感兴趣的:(vue.js,javascript,前端)