vue基礎:render函數(渲染函數)

  • Vue裏的虛擬DOM就是渲染函數生成的,
  • Vue在底層實現中,會將模板編譯成渲染函數,當然我們也可以不寫模板,直接寫渲染函數,以獲得更好的控制,



    從上圖中,不難發現一個Vue的應用程序是如何運行起來的,模板通過編譯生成AST,再由AST生成Vue的render函數(渲染函數),渲染函數結合數據生成Virtual DOM樹,Diff和Patch後生成新的UI

  • 模板:Vue的模板基於純HTML,基於Vue的模板語法,我們可以比較方便地聲明數據和UI的關係。
  • AST:AST是Abstract Syntax Tree的簡稱,Vue使用HTML的Parser將HTML模板解析爲AST,並且對AST進行一些優化的標記處理,提取最大的靜態樹,方便Virtual DOM時直接跳過Diff。
  • 渲染函數:渲染函數是用來生成Virtual DOM的。Vue推薦使用模板來構建我們的應用界面,在底層實現中Vue會將模板編譯成渲染函數,當然我們也可以不寫模板,直接寫渲染函數,以獲得更好的控制 (這部分是我們今天主要要了解和學習的部分)。
  • Virtual DOM:虛擬DOM樹,Vue的Virtual DOM Patching算法是基於Snabbdom的實現,並在些基礎上作了很多的調整和改進。

參考文章:https://www.jianshu.com/p/7508d2a114d3

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章