Learn Node.js - Part 1

2022-05-06

This series is my notes when learning Node.js.

We will focus on fundenmental concepts of Node.js in this post.

Read More

Angular Forms - Reactive Forms and Template-Driven Forms

2022-02-08

寫網頁的過程中免不了一定會出現「表單」,Angular 提供兩種不同的表單建立方式來處理使用者輸入,分別是 reactive forms 和 template-driven forms。

兩種方式都能夠

  • 抓取使用者在 view 上的 input events
  • 驗證使用者輸數
  • 建立 form model 和 data model 給後續表單資料更新
  • 建議一套追蹤表單資料變化的機制

而本文將介紹兩種方式的異同和使用方式。

Read More

Angular Advanced Templates - ng-template, ng-container and ngTemplateOutlet

2021-09-25

撰寫 Angular templates 時一定會用到 ng-templatengTemplateOutlet 來實現進階的功能,而它們經常與 ng-container 搭配使用。

我們將基於 Angular ng-template, ng-container and ngTemplateOutlet - The Complete Guide To Angular Templates 這篇寫得非常好的文章來介紹它們的用途和使用方式。

Read More

Angular - Introduction to Modules

2021-09-01

最近由於工作需要開始學習 Angular,過程中發現雖然 Angular 也是 component-based 的 SPA (Single Page Application) 框架,卻多了一層 Module (模組) 的概念。若是從 React 過來的開發者,可能會對這個概念有點陌生,所以我們就來看看 Angular Modules 是什麼吧~

Read More

TypeScript: Generic Types and Type Alias

2021-08-05

此篇要來談談 TypeScript 通用型別 (Generic Types) 的用途,以及 interface 和型別別名 (Type Alias) 的使用差異。

Read More

TypeScript: Any, Array, Union Types, Enum, Function, and Interface

2021-08-03

此篇繼續來看 TypeScript 的基本語法。

Read More

Introduction to TypeScript and Primitive Types

2021-07-30

眾所皆知,JavaScript 是一個「弱型別」的語言,意思是:

  • 開發者在宣告變數時,不需要事先指定變數的型別 e.g. string, number, boolean, etc.
  • JavaScript 會根據變數被賦予的值去判斷它的型別
  • 某些情況下,JavaScript 會在背地裡執行「強制轉型」(coercion),將變數轉換成可以處理的型別

Read More

Same-Site and Same-Origin

2021-04-05

之前總以為 same-site 的網站一定也是 same-origin,後來才發現並非如此,是兩個不同的定義。此篇將介紹 same-site 和 same-origin 的定義,讓往後與後端 RD 討論 cookie SameSiteAccess-Control-Allow-Origin header 設定時能更順利。

Read More

Introduction to Ngrok

2021-03-27

開發時,經常會須要從另一台機器連接在 localhost 的網站,或是希望能有個 public URL 測試某些功能,例如:Facebook Open Graph 設置、Chatbot 連接、金流串接。這時就會想有沒有什麼比先部署到伺服器上再 debug 更方便的作法呢?

有的,你可用 Ngrok

Read More

自動化部署 Hugo 部落格到 GitHub Pages

2021-03-27

接續以 Hugo 建立部落格,Hugo 在其文件中提到了多種 Hosting and Deployment 方式。若你選擇將 source code 放在 GitHub 上,那麼你可以直接考慮將部落格放在 GitHub Pages 上,並使用 GitHub Actions 自動化所有部署和更新的流程。

Read More