久久99久久人婷婷精品综合_超碰aⅴ人人做人人爽欧美_亚洲电影第三页_日韩欧美一中文字暮专区_波多野结衣的一区二区三区_婷婷在线播放_人人视频精品_国产精品日韩精品欧美精品_亚洲免费黄色_欧美性猛交xxxxxxxx

vue.nexttick指的是什么-創(chuàng)新互聯(lián)

小編給大家分享一下vue.nexttick指的是什么,希望大家閱讀完這篇文章后大所收獲,下面讓我們一起去探討吧!

我們提供的服務有:網(wǎng)站設計制作、網(wǎng)站設計、微信公眾號開發(fā)、網(wǎng)站優(yōu)化、網(wǎng)站認證、濱城ssl等。為成百上千企事業(yè)單位解決了網(wǎng)站和推廣的問題。提供周到的售前咨詢和貼心的售后服務,是有科學管理、有技術的濱城網(wǎng)站制作公司

vue.nexttick是一個獲取更新后DOM的Vue方法;nextTick方法是將回調(diào)函數(shù)延遲在下一次dom更新數(shù)據(jù)后調(diào)用,也就是當數(shù)據(jù)更新了,然后在dom中渲染后,就會自動執(zhí)行nextTick函數(shù)。

什么是Vue.nextTick()?

定義:在下次 DOM 更新循環(huán)結束之后執(zhí)行延遲回調(diào)。在修改數(shù)據(jù)之后立即使用這個方法,獲取更新后的 DOM。

所以就衍生出了這個獲取更新后的DOM的Vue方法。所以放在Vue.nextTick()回調(diào)函數(shù)中的執(zhí)行的應該是會對DOM進行操作的 js代碼;

理解:nextTick(),是將回調(diào)函數(shù)延遲在下一次dom更新數(shù)據(jù)后調(diào)用,簡單的理解是:當數(shù)據(jù)更新了,在dom中渲染后,自動執(zhí)行該函數(shù),

<template>
  <div class="hello">
    <div>
      <button id="firstBtn" @click="testClick()" ref="aa">{{testMsg}}</button>
    </div>
  </div>
</template>
 
<script>
export default {
  name: 'HelloWorld',
  data () {
    return {
      testMsg:"原始值",
    }
  },
  methods:{
    testClick:function(){
      let that=this;
      that.testMsg="修改后的值";
      console.log(that.$refs.aa.innerText);   //that.$refs.aa獲取指定DOM,輸出:原始值
    }
  }
}
</script>

使用this.$nextTick()

methods:{
    testClick:function(){
      let that=this;
      that.testMsg="修改后的值";
      that.$nextTick(function(){
        console.log(that.$refs.aa.innerText);  //輸出:修改后的值
      });
    }
  }

注意:Vue 實現(xiàn)響應式并不是數(shù)據(jù)發(fā)生變化之后 DOM 立即變化,而是按一定的策略進行 DOM 的更新。$nextTick 是在下次 DOM 更新循環(huán)結束之后執(zhí)行延遲回調(diào),在修改數(shù)據(jù)之后使用 $nextTick,則可以在回調(diào)中獲取更新后的 DOM,

什么時候需要用的Vue.nextTick()?

1、Vue生命周期的created()鉤子函數(shù)進行的DOM操作一定要放在Vue.nextTick()的回調(diào)函數(shù)中,原因是在created()鉤子函數(shù)執(zhí)行的時候DOM 其實并未進行任何渲染,而此時進行DOM操作無異于徒勞,所以此處一定要將DOM操作的js代碼放進Vue.nextTick()的回調(diào)函數(shù)中。與之對應的就是mounted鉤子函數(shù),因為該鉤子函數(shù)執(zhí)行時所有的DOM掛載已完成。

 created(){
    let that=this;
    that.$nextTick(function(){  //不使用this.$nextTick()方法會報錯
        that.$refs.aa.innerHTML="created中更改了按鈕內(nèi)容";  //寫入到DOM元素
    });
  },

2、當項目中你想在改變DOM元素的數(shù)據(jù)后基于新的dom做點什么,對新DOM一系列的js操作都需要放進Vue.nextTick()的回調(diào)函數(shù)中;通俗的理解是:更改數(shù)據(jù)后當你想立即使用js操作新的視圖的時候需要使用它

<template>
  <div class="hello">
    <h4 id="h">{{testMsg}}</h4>
  </div>
</template>
 
<script>
export default {
  name: 'HelloWorld',
  data () {
    return {
      testMsg:"原始值",
    }
  },
  methods:{
    changeTxt:function(){
      let that=this;
      that.testMsg="修改后的文本值";  //vue數(shù)據(jù)改變,改變dom結構
      let domTxt=document.getElementById('h').innerText;  //后續(xù)js對dom的操作
      console.log(domTxt);  //輸出可以看到vue數(shù)據(jù)修改后DOM并沒有立即更新,后續(xù)的dom都不是新的
      if(domTxt==="原始值"){
        console.log("文本data被修改后dom內(nèi)容沒立即更新");
      }else {
        console.log("文本data被修改后dom內(nèi)容被馬上更新了");
      }
    },
 
  }
}
</script>

正確的用法是:vue改變dom元素結構后使用vue.$nextTick()方法來實現(xiàn)dom數(shù)據(jù)更新后延遲執(zhí)行后續(xù)代碼

changeTxt:function(){
      let that=this;
      that.testMsg="修改后的文本值";  //修改dom結構
       
      that.$nextTick(function(){  //使用vue.$nextTick()方法可以dom數(shù)據(jù)更新后延遲執(zhí)行
        let domTxt=document.getElementById('h').innerText; 
        console.log(domTxt);  //輸出可以看到vue數(shù)據(jù)修改后并沒有DOM沒有立即更新,
        if(domTxt==="原始值"){
          console.log("文本data被修改后dom內(nèi)容沒立即更新");
        }else {
          console.log("文本data被修改后dom內(nèi)容被馬上更新了");
        }
      });
    },

Vue.nextTick(callback) 使用原理:

原因是,Vue是異步執(zhí)行dom更新的,一旦觀察到數(shù)據(jù)變化,Vue就會開啟一個隊列,然后把在同一個事件循環(huán) (event loop) 當中觀察到數(shù)據(jù)變化的 watcher 推送進這個隊列。如果這個watcher被觸發(fā)多次,只會被推送到隊列一次。這種緩沖行為可以有效的去掉重復數(shù)據(jù)造成的不必要的計算和DOm操作。而在下一個事件循環(huán)時,Vue會清空隊列,并進行必要的DOM更新。

當你設置 vm.someData = 'new value',DOM 并不會馬上更新,而是在異步隊列被清除,也就是下一個事件循環(huán)開始時執(zhí)行更新時才會進行必要的DOM更新。如果此時你想要根據(jù)更新的 DOM 狀態(tài)去做某些事情,就會出現(xiàn)問題。。為了在數(shù)據(jù)變化之后等待 Vue 完成更新 DOM ,可以在數(shù)據(jù)變化之后立即使用 Vue.nextTick(callback) 。這樣回調(diào)函數(shù)在 DOM 更新完成后就會調(diào)用。

看完了這篇文章,相信你對vue.nexttick指的是什么有了一定的了解,想了解更多相關知識,歡迎關注創(chuàng)新互聯(lián)行業(yè)資訊頻道,感謝各位的閱讀!

名稱欄目:vue.nexttick指的是什么-創(chuàng)新互聯(lián)
網(wǎng)頁地址:http://www.js-pz168.com/article2/disdic.html

成都網(wǎng)站建設公司_創(chuàng)新互聯(lián),為您提供App開發(fā)網(wǎng)站制作網(wǎng)站排名網(wǎng)站內(nèi)鏈虛擬主機Google

廣告

聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權請盡快告知,我們將會在第一時間刪除。文章觀點不代表本網(wǎng)站立場,如需處理請聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時需注明來源: 創(chuàng)新互聯(lián)

綿陽服務器托管
久久99久久人婷婷精品综合_超碰aⅴ人人做人人爽欧美_亚洲电影第三页_日韩欧美一中文字暮专区_波多野结衣的一区二区三区_婷婷在线播放_人人视频精品_国产精品日韩精品欧美精品_亚洲免费黄色_欧美性猛交xxxxxxxx
99热国产精品| 91高清在线观看| 欧美综合一区二区三区| 精品捆绑美女sm三区| 国产精品美女久久久久久久| 日韩黄色片在线观看| 成人aaaa免费全部观看| 日韩国产美国| 日韩欧美国产1| 亚洲一区在线观看视频| 国产麻豆成人传媒免费观看| 国产伦精品一区二区三区在线| 伊人狠狠色丁香综合尤物| 精品国产99国产精品| 亚洲国产精品久久不卡毛片| 成人爱爱电影网址| 日韩免费毛片| 亚洲精品一区二区三区香蕉| 亚洲电影你懂得| 91色综合久久久久婷婷| 夜夜爽www精品| 久久久久国产精品人| 奇米影视一区二区三区| 国产精品久久亚洲7777| 欧美色男人天堂| 亚洲三级小视频| 国产成人免费视频精品含羞草妖精| 蜜桃日韩视频| 日韩欧美高清dvd碟片| 亚洲成人手机在线| 91蝌蚪国产九色| 欧美在线一区二区| 国产精品久久免费看| 国产综合色在线| 奇米影视首页 狠狠色丁香婷婷久久综合| 日韩一级片网址| 亚洲图片一区二区| 99在线热播| 欧美精选一区二区| 亚洲高清中文字幕| 成人免费视频视频在| 欧美精品国产精品| 亚洲国产欧美另类丝袜| 91天堂素人约啪| 欧美日韩中文字幕一区| 夜夜爽夜夜爽精品视频| 97国产一区二区| 欧美日韩一二三区| 亚洲成人自拍一区| 国产精品xxxx| 日韩欧美第一区| 久久精品国产亚洲高清剧情介绍 | 国产精品久久久久久久小唯西川| 欧美裸体一区二区三区| 一区av在线播放| 99re国产| 日韩片之四级片| 美女免费视频一区二区| 日本视频一区二区在线观看| 久久精品日韩一区二区三区| 国产毛片一区二区| 色综合天天天天做夜夜夜夜做| 国产精品国产馆在线真实露脸| 丁香六月综合激情| 欧美日韩亚洲高清一区二区| 亚洲主播在线播放| 国产一区二区无遮挡| 久久亚洲二区三区| 国产成人精品一区二区三区四区 | 精品国产一区二区三区免费| 精品国产乱码久久久久久浪潮| 久久精品久久精品| 亚洲在线播放电影| 亚洲精品免费视频| 国产美女精品久久久| 久久青草欧美一区二区三区| 国产成人亚洲综合色影视| 欧美亚洲综合另类| 手机精品视频在线观看| 欧美日韩在线一区二区三区| 中文字幕av不卡| 91在线云播放| 精品免费国产二区三区| 国产精品香蕉一区二区三区| 欧美亚洲国产怡红院影院| 五月天久久比比资源色| 色婷婷精品国产一区二区三区| 国产精品国产a级| 国产区日韩欧美| 国产亚洲精品bt天堂精选| 99久久久精品免费观看国产蜜| 日韩一级免费一区| 国产宾馆实践打屁股91| 欧美久久久一区| 国产一区二区三区免费看| 欧美系列一区二区| 美女视频黄免费的久久 | 精品国产一区二区三区免费| 欧美激情在线一区二区三区| 97在线电影| 亚洲国产高清在线观看视频| 99久久久久国产精品免费| 久久综合九色综合97婷婷女人 | 狠狠爱一区二区三区| 国产精品大尺度| 国产区一区二区三区| 国产精品久久久爽爽爽麻豆色哟哟 | 色婷婷av一区| 美女一区二区久久| 欧美综合一区二区| 精品无人码麻豆乱码1区2区| 欧美精品一卡二卡| 国产精品主播直播| 日韩一区二区免费电影| 成人av网站在线观看免费| 欧美mv日韩mv国产网站| 91丨九色porny丨蝌蚪| 久久久久国产精品厨房| 国产精品欧美久久| 亚洲美女视频在线观看| 四虎永久在线精品免费一区二区| 午夜欧美在线一二页| 一本到高清视频免费精品| 免费精品视频在线| 欧美高清视频不卡网| 成人性视频网站| 久久久精品中文字幕麻豆发布| 国产精品二区在线| 亚洲精品视频观看| 一区二区三区精品国产| 久久精品久久久精品美女| 欧美一区二区网站| 97久久精品人人做人人爽| 国产精品美女视频| 日韩高清三级| 美女网站一区二区| 欧美一级淫片007| 91视频免费播放| 亚洲蜜臀av乱码久久精品| 亚洲高清资源综合久久精品| 秋霞电影网一区二区| 3d成人h动漫网站入口| 99精品欧美一区二区蜜桃免费| 国产精品久久久久永久免费观看| 日韩欧美视频一区二区三区四区| 日本色综合中文字幕| 欧美一区二区免费| 粉嫩av免费一区二区三区| 亚洲最大成人网4388xx| 欧美在线|欧美| 不卡视频一二三四| ...中文天堂在线一区| 伊人久久大香线蕉av一区| 国产老肥熟一区二区三区| 国产日本欧美一区二区| 色一情一乱一伦一区二区三区丨 | 欧美性生活久久| 成人av资源在线观看| 中文字幕一区二区三区乱码在线 | 97国产超碰| 亚洲国产欧美在线人成| 7777精品伊人久久久大香线蕉完整版| 99久久婷婷国产| 亚洲女人****多毛耸耸8| 欧美亚洲尤物久久| 18成人免费观看网站下载| 亚洲激情自拍偷拍| 欧美日韩国产大片| www.久久草| 天天免费综合色| 日韩限制级电影在线观看| 久久99欧美| 久久精品理论片| 亚洲国产精品黑人久久久| 在线日韩av永久免费观看| 白白色亚洲国产精品| 亚洲永久免费av| 日韩欧美在线网站| 欧美在线日韩精品| 国产99精品国产| 亚洲视频一区在线| 欧美精品视频www在线观看| 成人区精品一区二区| 日韩精品一二三| 久久久另类综合| 一本色道**综合亚洲精品蜜桃冫| 成人av小说网| 亚欧色一区w666天堂| 欧美成人一区二区三区在线观看| 日本视频一区二区不卡| 成人美女在线视频| 午夜视频一区二区三区| 久久亚洲捆绑美女| 色呦呦一区二区三区| 91九色露脸| 久久国产综合精品| 国产日韩欧美高清| 欧美午夜电影在线播放| 精品午夜一区二区| 国产精品一二三|