前言
第一次和Vue碰面是在我大四實習時,剛好遇到公司開始推行同仁使用框架開發,也讓我這個菜鳥搭上前端框架的順風車。
趁現在有空閒之餘來整理一下當初的筆記,也順帶複習一下 Vue.js!
何謂框架
框架(framework),是指協助開發者能更容易地進行網頁製作的工具,將一些複雜的語法及工具以簡易的方式撰寫,進而提升效率及效能。就像是設計一台汽車,已經將模型給你了,你只需要對設計圖進行配色就可以完成,而上色這個部分和周邊的配件就是可以讓大家去精進功力地方了。
而現行較主流的框架為 Vue, React, Angular 等等。
Vue.js
Vue是一種javascript的一種漸進式(progressive)框架,是以 View(視圖層)為基礎,與其他框架不同的是,他的目標是透過簡單的API提供開發者實作資料綁定和操作網頁上的元件,也因為核心(宣告式渲染、元件系統)關注在狀態和畫面的同步層級上,所以能夠輕易地與其他 js 函式庫、前端開發工具等等的做整合。
特色
- 輕量型框架:架構輕量、效能好
- 提供資料綁定(Data Binding)的功能:可以將值關聯到 Html 標籤或 Attribute 上,變更資料、樣式
- 虛擬Dom(Virtual DOM):以 javascript 物件模擬特定的 Dom 結構而產生的樹狀節構。不直接操作 Dom 元素,而是等一個段落後,再將這些變更回真實Dom上
- 元件化系統(Components system):提供 Dom 強大的擴充性,也可將部分程式碼封裝起來,供開發者維護、重複使用
- 指示詞(Directive):內建許多指示詞(v-開頭),用來進行程式邏輯的判斷
- Vue路由器(Router):利用它建構一個基本卻完整的路由庫,來操作瀏覽器上/下一頁的流程,建立 SPA 完整單頁式應用的能力。