上次參加好像是 2014 年,然後我寫到第二篇就超過時間,索性直接放棄(欸)。不過,由於 Famo.us 也莫名的退流行(等等,好像根本沒流行過)。所以就算是一個,只有我一個人自己玩得很高興的東西,說著說著著實感傷了起來。
這次想說,趁著稍微有一點時間,可以寫一下這些日子接觸 VueJS,到現在的一些心路歷程。像是那個說好的 ReactJS 好像就一直被我遺忘了(啊哈哈哈哈哈)。然後 Ng2,欸,現在好像是 Ng8 了吧?就當作我從來沒寫過 Angular 好了(苦笑)。
目錄
雖然說 30 天好像很長,不過要寫的東西其實也算是蠻多的,不如就改天(欸不對)。還是要大概訂定一下會說些什麼東西,不然寫起來應該會挺痛苦的。主要文章的主軸,會圍繞在 Vue 在於前後端的應用,但我應該不會提 SSR(Server-Side-Render)的部分,為何?因為我沒在用(笑)。
- VueJS 快速入門
- Component 基本入門
- Component 進階應用
- Component 魔術方法
import
與require
- Component 魔術方法
:is
- Component 魔術方法
Vue.options
- new Vue v.s new Vue
- Vuex 基本入門
- Router 基本入門
- Router 進階應用
- Router 與生命週期
- 薛丁格的生命週期
- Component 的溝通方式 Vuex
- Component 的溝通方式
:props
- Vue App 的溝通方式
- 題外話:原始碼之藏在
$watch
當中的神奇設定 - SEO 的問題
- 為何我不用 SSR?
- 後端的 Template Layout
- 簡易的後端輸出與 Hybrid 模式
- 動態載入 Components
- 動態載入 Vue App
- 動態載入 CSS Style
- 動態載入 webpack 簡易設定
- 大型資料載入實例與狀況 Event Binding
- 大型資料載入實例與狀況 Large of DOMs
- 大型資料載入實例與狀況 Deep watch
- Vanilla JS 與 Vue 的生命週期
- 下一個 VueJS 3.0
- 在 Vue 之後的事情,還會有什麼?
在開始之前的幹古
VueJS 算是這幾年比較異軍突起的一個。想當年 Angular 剛推出的時候,大家都覺得 Google 親生兒子喔喔喔喔超厲害,然後文件也是 喔喔喔喔超難讀(政治正確)。其實細數這些 JavaScript 的林林總總,會發現 Web 在所謂的前端這個面向的發展上,挺有趣的。
我深深覺得,這種老掉牙好像一點都不有趣(對啦純粹騙字數而已)。
- 1996 年有了 CSS,中文叫做串接樣式表
沒有人在意這件事吧。 - JavaScript 1995 年第一次問世,ECMAScript 則是 1997 年,DHTML 在 1997, 1998 年挺紅的,搭配 CSS 的推出。
- 哦,對了,當時 IE 3.0 開始推出一個 JScript,一直活到 IE 9.0,目前狀況不明。
- 誰還記得
document.write
?一開始都用 Prototype-based,然後就沒有然後了。 - 然後有 QuirksMode。
- 後來我當兵的時候,出現了 MooTools (2005),緊接著 jQuery (2006)。
- ECMAScript 進入 5 之後就開啟了大航海時代,今年好像是 ES2019 了(10th)。
我確實是老頭,會寫一點動態網頁(畫面上有東西會飛這樣),然後就一直寫動態網頁到現在了。具體來說,整個 Web 的發展,無論是現在所謂的前端,還是後端,還是全端,好像都有一些奇妙的模式,
- 以前由伺服器渲染,頁面上有 CSS/JS/HTML,各自分家好不快活。
- 後來伺服器端語言多樣化,MVC 的導入,各自的 CSS/JS/HTML 趨於複雜。
- 然後開始出現整合型的 JS/CSS 解決方案,但基本上還是分家的狀態。
- NodeJS 橫空出世!
- Angular 推出,套一句朋友說的,後端也要 MVC,前端也要 MVC(海角七號梗)。
- 然後 ReactJS 說可以把樣式設定
inline
喔。 - VueJS 說我叫做
.vue
檔,上面兩家的我都可以做喔(致敬雖然可恥但是好用)。 - 大家一股腦的做 SPA,然後衍生出 SEO 的問題,最終有了 SSR 解決方案。
- 所以為了 SEO,還是需要伺服器渲染出一個框,然後再交給前面的 JS 做其他事情。
有沒有覺得上面這些事情好像就是一種迴圈,正所謂天下大勢,分久必合,合久必分,我想大概就是這種樣子吧。雖然好像是可以看成三強鼎立,不過其實是面上這種 MVC, MVVM 的東西還是挺多的,只是因為目前來說,這三個(ng, react, vue)比較紅而已。
歐,對了,Google 還有 AMP 這個東西,就不在此列了。
小結
其實只要是寫 JavaScript 大概都是原生的啦(Coffee/TS 不算)。只是說,目前工具這麼方便,要動用到所謂 原生 的操作,我覺得也是必要之惡,至於說用得好或是不好,就見仁見智了。
JavaScript 雖然寫了好些年,但其實我還是不太懂他啊。
ITHome 鐵人賽同步刊登 Vue 從前端到後端 Day 0