欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  IT编程

vue-$nextTick

程序员文章站 2022-03-10 18:36:32
$nextTick原理:vue是异步渲染的,$nextTick 待 DOM 渲染完再回调(nextTick函数将回调延迟到下次 DOM 更新循环之后执行)页面渲染时会将data的修改做整合,多次data修改只会渲染一次列:
  • {{item}}
  • ...

$nextTick

列:

<!--template-->
     <ul ref="listdata">
       <li v-for="(item,index) in list" :key="index">{{item}}</li>
     </ul>
     <button @click="addItem">添加</button>
       addItem(){
         this.list.push(`${new Date()}`)
         this.list.push(`${new Date()}`)
         this.list.push(`${new Date()}`)
         let list=this.$refs.listdata
         console.log(list.childNodes.length)
       }

打印结果如下
vue-$nextTick
当我们将打印的内容放置nextTick中,如下

    addItem() {
      this.list.push(`${new Date()}`);
      this.list.push(`${new Date()}`);
      this.list.push(`${new Date()}`);
      this.$nextTick(() => {
        let list = this.$refs.listdata;
        console.log(list.childNodes.length);
      });
    },

打印结果则是下图
vue-$nextTick

本文地址:https://blog.csdn.net/shiqina/article/details/114264388

相关标签: vue.js