首頁>技術>

如果你見過老陳釋出過有關HTML的相關內容,你就會知道,HTML文件是由節點構成的集合。HTML檔案節點包括元素節點、文字節點和屬性節點。為了讓你看清它的廬山真面目,我再次將HTML檔案的頁面結構發出來,你要仔細觀察哦。

沒錯,HTML就是一棵由HTML標籤組成的樹。樹幹是<html>標籤,樹枝是節點,樹葉是屬性,樹花是文字。

1.2 瀏覽器如何砍樹

為了方便瀏覽器,砍(解析)HTML這棵樹, W3C(全球資訊網聯盟)定義了訪問HTML的DOM標準。DOM(Document Object Model)文件物件模型,定義了所有 HTML 元素的物件和屬性,以及訪問它們的方法。

JS操作DOM時,瀏覽器會從構建DOM樹開始從頭到尾執行一遍流程。比如在使用者一次操作中,他/她需要更新10個HTML元素(DOM節點)內容時,瀏覽器在收到第1個DOM請求後並不知道還有9次更新操作,因此會馬上執行流程,最終執行了10次操作。

在第1次計算完之後,緊接著下一個DOM更新請求時,之前節點的座標值就變了。那麼,進行第2次計算時,之前的操作相當於做了無用功,白白浪費了效能。頻繁操作還會出現頁面卡頓,影響使用者體驗的問題。

1.3 在效能最佳化之後

為了解決DOM訪問HTML檔案時存在的效能問題,一幫技術牛人就開始琢磨......

在2009年時,經過Misko Hevery等人的努力,終於研究出了一種diff演算法,實現了那裡需要更新就更新那裡的願望,為了方便分享喜悅,Misko Hevery等人對其進行了擴充套件、升級、包裝並給它取了一個好聽的名字:AngularJS。

為了方便、保障AngularJS能更好的用到谷歌產品中,谷歌對其進行了收購。於是,一款有著諸多特性,核心功能的是MVC(Model–view–controller)、模組化、自動化雙向資料繫結、語義化標籤、依賴注入等等的優秀前端JS框架,由此誕生了。

1.4 為何有Vue

在Angular流行的那些年,好多程式設計師都投入了好多精力去學習,也不管Angular的MVC是否全部都能用得上。其實就算知道了,也無可奈何,理由你懂的。

直到2013,就職於Google Creative Lab,名叫尤雨溪的帥哥的出現,程式設計師用前端JS框架,才發現根本不需要那麼累。

尤大大由於個人興趣,對Angular進行了改造,去掉了Angular MVC中的MV,只留下V(View)的內容。為了方便記憶,將其取名為Vue.js。

Vue.js(讀音 /vjuː/, 類似於 view)是一套構建使用者介面的漸進式框架。Vue核心只關注檢視層, 採用自底向上增量開發的設計,目標是透過儘可能簡單的API實現響應式的資料繫結和組合的檢視元件。

Vue從最初的實驗階段(2013年中到2014年2月),0.x 階段 (2014年2月到2015年10月),1.x 階段 (2015年10月到2016年9月),2.x階段(2016年9月至2019年上半年),到今天的3.x階段,已經有足足9年多的時間了。

不憑別的,就憑尤大大的堅持,你就應該要學會Vue,特別是開發Web產品需要用到時。就像我現在上班的企業,就開始在用Vue3.0了。

#前端##JavaScript##Vue.js##程式設計師##Web#

25
  • BSA-TRITC(10mg/ml) TRITC-BSA 牛血清白蛋白改性標記羅丹明
  • 圖文儲存常識:單機、集中、分散式、雲、雲原生儲存