欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

Vue.js實例方法之生命周期詳解

 更新時間:2017年07月03日 14:17:14   作者:前端崔小白  
這篇文章主要給大家介紹了關(guān)于Vue.js實例方法之生命周期的相關(guān)資料,文中通過示例代碼介紹的非常詳細,對大家具有一定的參考學(xué)習(xí)價值,需要的朋友們下面跟著小編一起來學(xué)習(xí)學(xué)習(xí)吧。

本文主要給大家介紹的是關(guān)于Vue.js實例方法之生命周期的相關(guān)內(nèi)容,分享出來供大家參考學(xué)習(xí),學(xué)習(xí)的朋友們下面來一起看看詳細的介紹:

一、$mount()掛載方法

$mount是用來掛載擴張的。如果 Vue 實例在實例化時沒有收到 el 選項,則它處于“未掛載”狀態(tài),沒有關(guān)聯(lián)的 DOM 元素。可以使用 vm.$mount() 手動地掛載一個未掛載的實例。

比如我們擴張了一個全局組件,通過$mount手動的掛載到DOM上,也就生成了一個Vue實例。

<div id="#app"></div>

擴張一個全局組件,并且掛載到DOM上。

//擴張全局的組件
var navBar = Vue.extend({
 template: `<div>{{ title }}</div>`,
 data(){
 return {
  title: 'Vue 擴展的全局組件'
 }
 },
 mounted(){
 console.log('掛載上了')
 }
})

//使用全局擴張的組件,掛載到id為#app的DOM上(會替換#app)
var vm = new navBar().$mount('#app');

//或者
var vm = new navBar({el: "#app"})

如果沒有提供 elementOrSelector 參數(shù),模板將被渲染為文檔之外的的元素,并且必須使用原生DOM API把它插入文檔中。

//在文檔之外渲染,并且掛載
var navbar = new navBar().$mount()
document.getElementById('app').appendChild(navbar.$el)

二、$destroy()銷毀方法

作用: 完全銷毀一個實例。

Vue 實例銷毀后調(diào)用。調(diào)用后,Vue 實例相關(guān)的所有東西都會解綁定,所有的事件監(jiān)聽器會被移除,所有的子實例也會被銷毀。

<div id="app">

</div>
<button onclick="destroy()">銷毀</button>

在組件中掛載destroyed生命周期鉤子

var navBar = Vue.extend({
 template: `<div>
   <div>{{ title }}</div>
   <h2>{{ num }}</h2>
   <button @click = 'add'>add</button>
  </div>`,
 data(){
 return {
  title: 'Vue 全局擴展組件',
  num: 10
 }
 }
 destroyed(){
 console.log('銷毀了')
 },
 methods: {
 add(){
  this.num++
 }
 }
})

//使用全局擴張的組件,掛載到id為#app的元素上
var vm = new navBar().$mount('#app');

//銷毀
function destroy(){
 //點擊按鈕,銷毀vm實例,控制臺會輸出‘銷毀了',當再次點擊的時候不會輸出,而且點擊add按鈕,數(shù)量也不會改變,說明已經(jīng)銷毀了
 vm.$destroy()
}

三、$forceUpdate()更新方法

該方法是迫使Vue實例重新渲染。注意:它僅僅影響實例本身和插入插槽內(nèi)容的子組件,而不是所有子組件。

看代碼:

<button onclick="reload()">刷新</button>
//同樣的,為了看到是否重新更新了數(shù)據(jù),即是否執(zhí)行了reload方法,我們在實例中添加updated選項
updated(){
 console.log('數(shù)據(jù)重新渲染了')
}

//三、更新數(shù)據(jù)方法
function reload(){
 vm.$forceUpdate()
}

點擊更新按鈕,控制臺打印出updated鉤子中的輸出,說明Vue實例重新渲染了。


四、$nextTick()數(shù)據(jù)修改方法

參數(shù): {Function} [callback]

該方法是構(gòu)造器data中的數(shù)據(jù)被修改后觸發(fā),相當于updated鉤子函數(shù),但還是有區(qū)別的:它是在updated鉤子函數(shù)執(zhí)行完之后執(zhí)行其里邊的回調(diào)函數(shù)。也就是將回調(diào)延遲到下次 DOM 更新循環(huán)之后執(zhí)行。在修改數(shù)據(jù)之后立即使用它,然后等待 DOM 更新。

methods: {
 add(){
  //更改數(shù)據(jù)
  this.num++
  this.$nextTick(function(){
   console.log('DOM現(xiàn)在更新了')
  })
 }
},
updated(){
 console.log('數(shù)據(jù)更新成:'+this.num)
}

通過控制臺的打印結(jié)果,可以看到,當數(shù)據(jù)改變時,updated鉤子早于$nextTick中的回調(diào)。

總結(jié)

以上就是這篇文章的全部內(nèi)容了,希望本文的內(nèi)容對大家的學(xué)習(xí)或者工作能帶來一定的幫助,如有疑問大家可以留言交流,謝謝大家對腳本之家的支持。

相關(guān)文章

  • 一起來學(xué)習(xí)Vue的組件間通信方式

    一起來學(xué)習(xí)Vue的組件間通信方式

    這篇文章主要為大家詳細介紹了Vue的組件間通信方式,文中示例代碼介紹的非常詳細,具有一定的參考價值,感興趣的小伙伴們可以參考一下,希望能夠給你帶來幫助
    2022-03-03
  • vue中的@click.native 原生點擊事件

    vue中的@click.native 原生點擊事件

    這篇文章主要介紹了vue中的@click.native 原生點擊事件,具有很好的參考價值,希望對大家有所幫助。如有錯誤或未考慮完全的地方,望不吝賜教
    2022-04-04
  • 在Vue項目中,防止頁面被縮放和放大示例

    在Vue項目中,防止頁面被縮放和放大示例

    今天小編就為大家分享一篇在Vue項目中,防止頁面被縮放和放大示例,具有很好的參考 價值,希望對大家有所幫助。一起跟隨小編過來看看吧
    2019-10-10
  • vue3.0實現(xiàn)插件封裝

    vue3.0實現(xiàn)插件封裝

    這篇文章主要介紹了vue3.0實現(xiàn)插件封裝的方法,幫助大家更好的理解和使用vue框架,感興趣的朋友可以了解下
    2020-12-12
  • Vue Element前端應(yīng)用開發(fā)之組織機構(gòu)和角色管理

    Vue Element前端應(yīng)用開發(fā)之組織機構(gòu)和角色管理

    本篇文章繼續(xù)深化Vue Element權(quán)限管理模塊管理的內(nèi)容,介紹組織機構(gòu)和角色管理模塊的處理,使得我們了解界面組件化模塊的開發(fā)思路和做法,提高我們界面設(shè)計的技巧,并減少代碼的復(fù)雜性,提高界面代碼的可讀性,同時也是利用組件的復(fù)用管理。
    2021-05-05
  • Vue3使用vue-qrcode-reader實現(xiàn)掃碼綁定設(shè)備功能(推薦)

    Vue3使用vue-qrcode-reader實現(xiàn)掃碼綁定設(shè)備功能(推薦)

    本文介紹了在Vue3中使用vue-qrcode-reader版本5.5.7來實現(xiàn)移動端的掃碼綁定設(shè)備功能,用戶通過掃描二維碼自動獲取設(shè)備序列號,并填充到添加設(shè)備界面,完成設(shè)備綁定的全過程,包含ScanCode.vue和DeviceAdd.vue兩個主要界面的實現(xiàn)方式
    2024-10-10
  • axios的interceptors多次執(zhí)行問題解決

    axios的interceptors多次執(zhí)行問題解決

    這篇文章主要為大家介紹了axios中interceptors多次執(zhí)行問題解決,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進步,早日升職加薪
    2022-06-06
  • vue?+?ele?實現(xiàn)下拉選擇框和下拉多選選擇框處理方案

    vue?+?ele?實現(xiàn)下拉選擇框和下拉多選選擇框處理方案

    這篇文章主要介紹了vue?+?ele?實現(xiàn)下拉選擇框和下拉多選選擇框處理方案,本文通過實例代碼給大家介紹的非常詳細,對大家的學(xué)習(xí)或工作具有一定的參考借鑒價值,需要的朋友可以參考下
    2023-08-08
  • 詳解VUE中的插值( Interpolation)語法

    詳解VUE中的插值( Interpolation)語法

    這篇文章主要介紹了詳解VUE中的插值( Interpolation)語法,文中通過示例代碼介紹的非常詳細,對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2020-10-10
  • vue3封裝自定義v-model的hooks示例詳解

    vue3封裝自定義v-model的hooks示例詳解

    這篇文章主要為大家介紹了vue3封裝自定義v-model的hooks示例詳解,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進步,早日升職加薪
    2022-07-07

最新評論