例項生命週期鉤子
(1)在beforecreate和created之間,進行資料觀測(data observer) ,也就是在這個時候開始監控data中的資料變化了,同時初始化事件
(2)
首先系統會判斷物件中有沒有el選項
有el選項,則繼續編譯過程
沒有el選項,則停止編譯,也意味著暫時停止了生命週期
,直到vm.$mount(el)
(3)1.如果vue例項物件中有template引數選項,則將其作為模板編譯成render函式
2.如果沒有template引數選項,則將外部的html作為模板編譯(template),也就是說,template引數選項的優先順序要比外部的html高
3.如果1,2條件都不具備,則報錯
(4)正因為render函式和template選項的「優先順序」比外部html要高,所以,最後一般會存在乙個外部html模板被vue例項本身配置的模板所「替代」的過程也就是上圖所說的 「replace」
(5)在vue中,資料更改會導致虛擬 dom 重新渲染,並先後呼叫beforeupdate鉤子函式和updated鉤子函式
但要注意一點:重渲染(呼叫這兩個鉤子函式)的前提是被更改的資料已經被寫入模板中!!(這點很重要)
(6)beforedestroy鉤子函式在例項銷毀之前呼叫。在這一步,例項仍然完全可用。
destroyed鉤子函式在vue 例項銷毀後呼叫。呼叫後,vue 例項指示的所有東西都會解繫結,所有的事件***會被移除,所有的子例項也會被銷毀。
【注意】就如同呼叫在vue例項上呼叫$mounted會使暫停的生命週期繼續一樣,呼叫$destroy()會直接銷毀例項
Vue學習筆記 一
1 vue基本模型 一段html 配合json,再new 處理vue例項。html json格式的資料 vue.js var vm new vue new vue 2.2.2 v for value in json 2.2.3 v for k,v in json 如果有重複的資料 track by ...
vue學習筆記(一)
一.搭建環境 1.如果我們的電腦上有了node和npm,我們就只需要執行下面的命令全域性安裝vue cli腳手架 npm install g vue cli 或者 cnpm install g vue cli 2.構建完腳手架之後,隨便進入乙個我們事先準備好的目錄,比如demo目錄,然後在目錄中做初...
vue學習筆記(一)
1.vue介紹 vue.js是一套用於構建使用者介面的漸進式框架。與其它大型框架不同的是,vue 被設計為可以自底向上逐層應用。vue 的核心庫只關注檢視層,不僅易於上手,還便於與第三方庫或既有專案整合。另一方面,當與現代化的工具鏈以及各種支援類庫結合使用時,vue 也完全能夠為複雜的單頁應用提供驅...