首頁  >  文章  >  web前端  >  vue生命週期鉤子函數的簡單介紹(程式碼範例)

vue生命週期鉤子函數的簡單介紹(程式碼範例)

不言
不言原創
2018-09-27 15:47:442650瀏覽

這篇文章帶給大家的內容是關於vue生命週期鉤子函數的簡單介紹(程式碼範例),有一定的參考價值,有需要的朋友可以參考一下,希望對你有幫助。

開篇先來一張圖

下圖是官方展示的生命週期圖

Vue實例的生命週期鉤子函數( 8個)
1. beforeCreate
剛new了一個元件,無法存取到資料和真實的dom,基本上這個好像不能幹啥
2. created
   data屬性完成了賦值,可以對資料進行修改但是不會觸發updated,在這裡可以做初始資料的獲取
3. beforeMount
render準備要渲染了,函數中虛擬dom已經創建完成,這時候改變資料也不會觸發update ,在這裡可以做初始數據的獲取
4. mounted
開始render,渲染出真實dom,執行mounted鉤子函數,組建已經出現在頁面中,數據,事件,都DOM都處理好了。這裡你可以改是進行真實的DOM操作
5. beforeUpdate
元件,實例資料更新前會執行的函數,虛擬DOM會重新建構虛擬DOM,與上一次的虛擬DOM比較後重新渲染。切記不可進行資料修改否則會出現死迴圈
6. updated
更新完會執行的函數,切記不可進行資料修改否則會出現死迴圈
7. beforeDestroy
實例被銷毀之前會執行的函數,做善後的工作,清除計時器,清除非指令綁定的事件等等
8. destroyed
實例被銷毀後會執行的函數,也可以做善後工作。

<template>
  <div class="hello">
   Hello World!
  </div>
</template>

<script>
export default {
  name: "HelloWorld",
  data() {
    return {
      msg: "Welcome to Your Vue.js App"
    };
  },
  beforeCreate: function() {
    console.log("data属性光声明没有赋值的时候");
  },
  created: function() {
    console.log("data属性完成了赋值");
  },
  beforeMount: function() {
    console.log("页面上的{{name}}还没有被渲染成真正的数据");
  },
  mounted: function() {
    console.log("页面上的{{name}}被渲染成真正的数据");
  },
  beforeUpdate: function() {
    console.log(" 数据(data属性)更新之前会执行的函数");
  },
  updated: function() {
    console.log("数据(data属性)更新完会执行的函数");
  },
  beforeDestroy: function() {
    console.log("实例被销毁之前会执行的函数");
  },
  destroyed: function() {
    console.log("实例被销毁后会执行的函数");
  }
};
</script>
<style scoped>
</style>

console這樣一個輸出順序:

#大概這樣一個生命週期鉤子函數執行的順序,包括我之前是用angular開發跟vue一樣他也有自己的生命週期鉤子函數。

生命週期簡單來說就是一個元件從創建到初始化到銷毀的一個過程,在這個過程中有這些生命週期鉤子函數我們可以更方便的去操作整一個元件。

以上是vue生命週期鉤子函數的簡單介紹(程式碼範例)的詳細內容。更多資訊請關注PHP中文網其他相關文章!

陳述:
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn