學會 Angular 後,就只能寫前端程式嗎?:Nest
你寫的文件別人看得懂嗎?:compodoc
既期待又怕受傷害:@angular/service-worker
前言
原本打算研究 ServiceWorker 另一個功能-Sync,不過網路上找不到比較詳細的說明,也沒比較完整的範例,因此打算改研究 Workbox 或 @angular/service-worker,因為這2個是將 Angular 調整為 PWA 比較常見的用法,但是從 npm 網站查詢可以看到 @angular/service-worker 被歸屬在 mobile-toolkit 下面,而 mobile-toolkit 幾乎沒有在維護了。
PWA 替身術:ServiceWorker - caches
ServiceWorker
在 PWA 偽裝術:manifest.json 我們透過 manifest.json
來讓 Web 可以在桌面上產生捷徑,並在執行時隱藏了不需要的網址列,讓外觀上跟一般 App 已無太大差異,接下來我們要解決 Web App 的另一大難題-離線機制,雖然說現在的系統幾乎都是透過網路與後端資料做即時交換,可說如果沒有網路的話過半數的 App 大概都會失去它的功用,但是與網頁不同的是在沒有網路狀態下仍然有畫面,而網頁則會顯示瀏覽器預設的警示畫面,相較之下對於一般使用者來說較不友善,而起好一點的 App 都會將網路下載下來的資訊儲存在本機端,當離線時雖然無法再與後端做資料交換,但是仍然可以提供之前獲取的資料,雖然 Web 也提供了離線儲存機制,但是扣除安全性不說,開發上就比較困難,尤其是使用者(或是瀏覽器擴充功能)還可以禁止相關功能。
PWA 推送通知:ServiceWorker - push
PWA 偽裝術:manifest.json
Electron:跨平台的視窗應用程式
Ionic vs. Angular
Ionic 與 Angular 比較
在建立 Ionic 專案中,我們練習了如何建立 Ionic,接下來對於 會開發 Angular 程式的人來說,最關注的應該就是 Ionic 跟 Angular 有什麼不同?要再多學些什麼?
建立 Ionic 專案
建立專案
在Ionic 開發環境中安裝好開發環境之後,接下來就是開始由無到有的建置新專案,Ionic 其實是以 Angular 為核心基礎所衍生出來的框架,所以對已經會 Angular 的人來說會很容易上手,我們拿 Ionic CLI 與 Angular CLI 來比較,就會發現指令十分雷同,下面列出常用指令:
Ionic | Angular | 說明 |
---|---|---|
start | new | 建立新專案 |
serve | serve | 啟動開發用伺服器 |
generate | generate | 建立各種類別物件 |
build | build | 建置專案 |