
#### 1. 創建階段
1. beforeCreate():
第一個生命周期函數,此時獲取不到data
2. created():
這是我們遇到的第二個生命周期函數,在created中,data和methods都已經被初始化好了!
3. beforeMount():
這是我們遇到的第3個生命周期函數,表示模板已經在內存中編輯完成了,但是尚未把模板渲染到頁面
```
console.log((document.getElementById("h1")).innerText); //{{msg}}
```
在beforeMount執行的時候,頁面中的元素,還沒有被真正替換過來,只是之前寫的一些模板字符串
4. mounted():
第四個生命周期函數,表示,內存中的模板,已經真實掛載到了頁面中,用戶已經可以看到渲染的頁面了
```
console.log((document.getElementById("h1")).innerText); //ok
```
注意:mounted是實例創建期間的最后一個生命周期函數,當執行完了mounted就表示,實例已經被完全創建好了
#### 2. 運行階段
1. beforeUpdate():
這時候我們的界面還沒有被更新,但數據已經被更新了
得出結論:當執行beforeUpdate的時候,頁面中的顯示的數據,還是舊的,此時data數據是最新的,頁面尚未和最新的數據保持同步
此時改數據不會死循環
```
console.log("頁面顯示的數據是:"+document.getElementById("h1").innerText); //old
console.log("data中的數據是:"+ this.msg); //new
```
2. updated():
數據已經重新渲染到DOM樹,頁面更新完畢,不要在update中改數據,否則會導致視圖陷入死循環
#### 3. 銷毀階段
1. beforeDestory():
進入before銷毀階段,此時實例所有東西還可用,尚未真正進入銷毀狀態
2. destroyed()
銷毀:手動移除組件,或者路由切換
vm.$destroy(): 移除所有的觀察者,移除監聽事件
實例銷毀,所有內存不可用
- 0. MVC和MVVM
- 1. v-model無法實時更新的解決辦法
- 1. Vue 指令
- 1. v-cloak&v-text&v-html
- 2. v-bind
- 3. v-model
- 7. v-for指令的幾種使用方式
- 8. v-if和v-show的使用
- 2. 事件修飾符
- 3. 通過屬性設置樣式
- 1. 通過屬性綁定設置元素class
- 2. 通過屬性綁定設置元素style
- 4. 自定義指令
- 11. 自定義全局指令
- 12. 自定義私有指令
- 5. 過濾器
- 6. 鍵盤指令
- 7. 生命周期
- 8. vue-resource
- 9. 動畫
- 1. 使用過渡類名實現動畫
- 2. 使用animate.css實現動畫
- 3. 鉤子函數實現小球半場動畫
- 10. 組件
- 1. 全局組件的創建方式
- 2. 私有組件的創建方式
- 3. 組件中的data和methods
- 4. component元素
- 5. 組件配合transition元素實現動畫
- 6. 父組件傳參傳方法
- 11. 路由
- 1. 什么是路由
- 2. vue-router的使用
- 3. 使用router-link&query方式傳遞參數
- 4. 使用param傳值
- 5. 使用children屬性實現路由嵌套
- 6. router-view之間獲取父級data
- 7. 實現路由跳轉的幾種方式
- 12. 設置緩存
- 13. $ref 操作DOM&獲取自定義屬性
- 14. 初始化一個項目
- 15. 使用并封裝一個axios方法
- 17. vuex
- 18. watch 監聽 data數據
- 19. keep alive 緩存路由組件
- vue效果實現
- 1. 實現頂部根據滑動漸隱漸現
- 2. 制作一個動畫包裹組件
- 20. vue 中的數據類操作
- 第三方工具&ui
- 1. vant-ui
- 1. 上拉加載更多
- 2. 使用圖片預加載
- 2. better-scroll
- 1. 實現上下滑動效果
- 2. 實現兩欄式點擊滑動跳轉
- vue3
- compositionApi
- 2. ref 和 reactive
- 4. watch
- 5. watchEffect
- 7.使用ref操作dom
- effect副作用
- 1. 新特性
- 3. 生命周期
- 6.定義props
- 實現自定義組件v-model
- vue面試題
- 1.對mvvm的理解
- 2.vue2和vue3響應式數據的理解
- 3.vue中如何檢測數組的變化
- 4.vue中如何進行依賴收集
- 5.如何理解vue中的模板編譯原理
- 6.vue生命周期以及原理
- 7.vue組件data為什么必須是個函數
- 8.vue-router原理
- 9.vue.mixin原理
- 10.$nextTick原理
- 11.computed和watch的區別
- vue SSR服務端渲染
- 1.什么是服務端渲染
- 2.快速創建服務端渲染