最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

vue中created和mounted的區(qū)別淺析

 更新時(shí)間:2019年08月13日 10:38:05   作者:dutny  
這篇文章主要給大家介紹了關(guān)于vue中created和mounted區(qū)別的相關(guān)資料,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家學(xué)習(xí)或者使用vue具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面來(lái)一起學(xué)習(xí)學(xué)習(xí)吧

前言

關(guān)于vue.js中的生命周期,如果不是有特別的需求,一般在項(xiàng)目開發(fā)過(guò)程中更多的使用created和mounted,
所以在本文中主要講解created與mounted在開發(fā)中的主要使用區(qū)別。

關(guān)于完整的生命周期,不久會(huì)在另一篇文章中做整體的理解,包括activated、destroyed等,不過(guò)可能會(huì)有點(diǎn)晚,大家可以留意一下

版本信息:

  • 系統(tǒng):win10
  • Vue:2.5.2
  • webpack:3.6.0
  • npm:6.9.0
  • node:10.15.3

生命周期

完整的生命周期圖示為了避免占用板塊,這里就不貼出來(lái)了,大家可以自行前往vue生命周期查看。

瀏覽器渲染過(guò)程

具體的瀏覽器渲染過(guò)程我會(huì)過(guò)幾天另外寫一遍文章,大家可以去我的文章看看。

  • 構(gòu)建DOM樹
  • 構(gòu)建css規(guī)則樹,根據(jù)執(zhí)行順序解析js文件。
  • 構(gòu)建渲染樹Render Tree
  • 渲染樹布局layout
  • 渲染樹繪制

生命周期中的瀏覽器渲染

這里是官方文檔對(duì)生命周期api的解釋,大家可以看看

以下為測(cè)試vue部分生命函數(shù)

beforeCreate(){
 console.log('beforecreate:',document.getElementById('first'))//null
 console.log('data:',this.text);//undefined
 this.sayHello();//error:not a function
},
created(){
 console.log('create:',document.getElementById('first'))//null
 console.log('data:',this.text);//this.text
 this.sayHello();//this.sayHello()
},
beforeMount(){
 console.log('beforeMount:',document.getElementById('first'))//null
 console.log('data:',this.text);//this.text
 this.sayHello();//this.sayHello()
},
mounted(){
 console.log('mounted:',document.getElementById('first'))//<p></p>
 console.log('data:',this.text);//this.text
 this.sayHello();//this.sayHello()
}

通過(guò)上述測(cè)試我們可以知道,

生命周期 是否獲取dom節(jié)點(diǎn) 是否可以獲取data 是否獲取methods
beforeCreate
created
beforeMount
mounted

以我的個(gè)人理解,vue生命周期實(shí)際上和瀏覽器渲染過(guò)程是掛鉤的,

在beforecreate階段,對(duì)瀏覽器來(lái)說(shuō),整個(gè)渲染流程尚未開始或者說(shuō)準(zhǔn)備開始,對(duì)vue來(lái)說(shuō),實(shí)例尚未被初始化,data observer和 event/watcher也還未被調(diào)用,在此階段,對(duì)data、methods或文檔節(jié)點(diǎn)的調(diào)用現(xiàn)在無(wú)法得到正確的數(shù)據(jù)。

在created階段,對(duì)瀏覽器來(lái)說(shuō),渲染整個(gè)HTML文檔時(shí),dom節(jié)點(diǎn)、css規(guī)則樹與js文件被解析后,但是沒有進(jìn)入被瀏覽器render過(guò)程,上述資源是尚未掛載在頁(yè)面上,也就是在vue生命周期中對(duì)應(yīng)的created
階段,實(shí)例已經(jīng)被初始化,但是還沒有掛載至$el上,所以我們無(wú)法獲取到對(duì)應(yīng)的節(jié)點(diǎn),但是此時(shí)我們是可以獲取到vue中data與methods中的數(shù)據(jù)的

在beforecreate階段,實(shí)際上與created階段類似,節(jié)點(diǎn)尚未掛載,但是依舊可以獲取到data與methods中的數(shù)據(jù)。

在mounted階段,對(duì)瀏覽器來(lái)說(shuō),已經(jīng)完成了dom與css規(guī)則樹的render,并完成對(duì)render tree進(jìn)行了布局,而瀏覽器收到這一指令,調(diào)用渲染器的paint()在屏幕上顯示,而對(duì)于vue來(lái)說(shuō),在mounted階段,vue的template成功掛載在$el中,此時(shí)一個(gè)完整的頁(yè)面已經(jīng)能夠顯示在瀏覽器中,所以在這個(gè)階段,即可以調(diào)用節(jié)點(diǎn)了(關(guān)于這一點(diǎn),在筆者測(cè)試中,在mounted方法中打斷點(diǎn)然后run,依舊能夠在瀏覽器中看到整體的頁(yè)面)。

寫在最后

筆者目前也只是一個(gè)職場(chǎng)小白,粗略探討一下自己的看法,若有疑問,或者文章錯(cuò)誤,都可以在評(píng)論中指出,我們一起討論

好了,以上就是這篇文章的全部?jī)?nèi)容了,希望本文的內(nèi)容對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,謝謝大家對(duì)腳本之家的支持。

相關(guān)文章

  • 深入理解vue.js中$watch的oldvalue與newValue

    深入理解vue.js中$watch的oldvalue與newValue

    這篇文章主要給大家介紹了關(guān)于vue.js中$watch的oldvalue與newValue的相關(guān)資料,文中通過(guò)示例代碼介紹的非常詳細(xì),并且介紹了關(guān)于watch的其他測(cè)試,對(duì)大家學(xué)習(xí)或者使用vue.js具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面跟著小編來(lái)一起看看吧。
    2017-08-08
  • 在Vant的基礎(chǔ)上實(shí)現(xiàn)添加表單驗(yàn)證框架的方法示例

    在Vant的基礎(chǔ)上實(shí)現(xiàn)添加表單驗(yàn)證框架的方法示例

    這篇文章主要介紹了在Vant的基礎(chǔ)上實(shí)現(xiàn)添加驗(yàn)證框架的方法示例,小編覺得挺不錯(cuò)的,現(xiàn)在分享給大家,也給大家做個(gè)參考。一起跟隨小編過(guò)來(lái)看看吧
    2018-12-12
  • vue中this.$set()的基本用法實(shí)例

    vue中this.$set()的基本用法實(shí)例

    最近工作上經(jīng)常操作數(shù)組數(shù)據(jù),并且要求實(shí)時(shí)更新視圖數(shù)據(jù),這個(gè)時(shí)候首先想到的是?vue.set(),下面這篇文章主要給大家介紹了關(guān)于vue中this.$set()的基本用法實(shí)例,需要的朋友可以參考下
    2023-01-01
  • Vue的子組件props如何設(shè)置多個(gè)校驗(yàn)類型

    Vue的子組件props如何設(shè)置多個(gè)校驗(yàn)類型

    這篇文章主要介紹了Vue的子組件props如何設(shè)置多個(gè)校驗(yàn)類型問題。具有很好的參考價(jià)值,希望對(duì)大家有所幫助。如有錯(cuò)誤或未考慮完全的地方,望不吝賜教
    2023-03-03
  • Vue 按鈕居中、按鈕居左、按鈕居右的實(shí)現(xiàn)代碼

    Vue 按鈕居中、按鈕居左、按鈕居右的實(shí)現(xiàn)代碼

    在 Vue 中,如果需要將按鈕居中顯示,可以使用 CSS 中的 `text-align: center` 屬性來(lái)實(shí)現(xiàn),本文通過(guò)實(shí)例代碼給大家介紹Vue 按鈕居中、按鈕居左、按鈕居右的實(shí)現(xiàn)代碼,感興趣的朋友一起看看吧
    2023-10-10
  • Element?UI安裝全過(guò)程

    Element?UI安裝全過(guò)程

    element?ui?就是基于vue的一個(gè)ui框架,該框架基于vue開發(fā)了很多相關(guān)組件,方便我們快速開發(fā)頁(yè)面,餓了么前端團(tuán)隊(duì)基于vue進(jìn)行開發(fā)并且進(jìn)行了開源?element?ui?中提供全部都是封裝好組件,本文給大家介紹Element?UI安裝全過(guò)程,感興趣的朋友一起看看吧
    2024-01-01
  • vue中el-input綁定鍵盤按鍵(按鍵修飾符)

    vue中el-input綁定鍵盤按鍵(按鍵修飾符)

    這篇文章主要介紹了vue中el-input綁定鍵盤按鍵(按鍵修飾符),文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧
    2020-07-07
  • vue設(shè)置必填項(xiàng)和判斷必填項(xiàng)是否填入的彈窗提示

    vue設(shè)置必填項(xiàng)和判斷必填項(xiàng)是否填入的彈窗提示

    表格判斷在很多項(xiàng)目中都用得到,本文主要介紹了vue設(shè)置必填項(xiàng)和判斷必填項(xiàng)是否填入的彈窗提示,具有一定的參考價(jià)值,感興趣的可以了解一下
    2023-11-11
  • 解決vue3打包過(guò)后空白頁(yè)面的情況

    解決vue3打包過(guò)后空白頁(yè)面的情況

    這篇文章主要介紹了解決vue3打包過(guò)后空白頁(yè)面的情況,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。如有錯(cuò)誤或未考慮完全的地方,望不吝賜教
    2022-09-09
  • 詳解vue身份認(rèn)證管理和租戶管理

    詳解vue身份認(rèn)證管理和租戶管理

    本篇開始功能模塊的開發(fā),首先完成ABP模板自帶的身份認(rèn)證管理模塊和租戶管理模塊。同樣的,參考ABP的Angular版本來(lái)做。
    2021-05-05

最新評(píng)論

孟村| 郁南县| 东丰县| 北宁市| 高唐县| 博湖县| 嘉义县| 凤凰县| 盱眙县| 鹰潭市| 青阳县| 页游| 仁布县| 高唐县| 晋中市| 南川市| 延寿县| 延寿县| 云浮市| 壤塘县| 梁山县| 娱乐| 涿州市| 内江市| 麻江县| 深泽县| 阜平县| 芷江| 通州市| 德令哈市| 闵行区| 赤城县| 高阳县| 北川| 莱州市| 望城县| 江川县| 瓮安县| 夏津县| 景宁| 册亨县|