- Vue.js從入門到項目實踐(超值版)
- 聚慕課教育研發中心編著
- 550字
- 2022-07-29 14:27:33
2.5.1 面試技巧與解析(一)
面試官:Vue的生命周期是什么?
應聘者:
(1)beforeCreate()(創建前)在數據觀測和初始化事件還未開始時被調用。
(2)created()(創建后)在完成數據觀測、屬性和方法的運算、初始化事件后被調用,$el屬性還沒有顯示出來。
(3)beforeMount()(載入前)在掛載開始前被調用,相關的render函數首次被調用。實例已完成以下配置:編譯模板,把data中的數據和模板生成.html。注意此時還沒有掛載.html到頁面上。
(4)mounted()(載入后)在el被新創建的vm.$el替換,并掛載到實例上后被調用。實例已完成以下配置:用上面編譯好的.html內容替換el屬性指向的DOM對象。注意此時模板中的.html被渲染到.html頁面中,此過程中進行Ajax交互。
(5)beforeUpdate()(更新前)在數據更新前被調用,發生在虛擬DOM重新渲染和打補丁前。在該鉤子函數中可以進一步更改狀態,不會觸發附加的重渲染過程。
(6)updated()(更新后)在由于數據更改導致的虛擬DOM重新渲染和打補丁后被調用。調用時,組件DOM已經更新,所以可以執行依賴于DOM的操作。然而,在大多數情況下,應該避免在此期間更改狀態,因為這可能會導致更新無限循環。該鉤子函數在服務器端渲染期間不被調用。
(7)beforeDestroy()(銷毀前)在實例銷毀前被調用,實例仍然完全可用。
(8)destroyed()(銷毀后)在實例銷毀后被調用,調用后,所有的事件監聽器會被移除、所有的子實例也會被銷毀。該鉤子函數在服務器端渲染期間不被調用。
推薦閱讀
- 網站建設與網頁設計從入門到精通Dreamweaver+Flash+Photoshop+HTML+CSS+JavaScript
- 中文版Dreamweaver CS6/Flash CS6/Photoshop CS6網頁設計基礎培訓
- 網頁設計那些事兒
- CSS+DIV網頁樣式與布局案例指導
- 小白實戰大前端:移動端與前端的互通之路
- HTML+CSS+JavaScript網頁制作案例教程(第2版)
- JSP動態網站開發案例指導
- Premiere Pro CS6多功能教材
- Vue應用程序開發
- 在實戰中成長:JSP開發之路
- 建筑CAD繪圖技術(第2版)
- Sketch 移動UI與交互設計(視頻講解版)
- 精通網站建設:100%全能建站密碼
- 網站視覺設計
- 網頁設計綜合實踐教程