TypeScript 10分鐘快速入門
TypeScript 是一個以 JavaScript 語言為基礎,所延伸出來的另一種超集的程式語言,也就是說 TypeScript 涵蓋了幾乎目前 ECMAScript 標準的新式語言範圍,並額外加了許多關於資料類型的預先定義與相互檢查部份。
學習 TypeScript 需要有對新式的 ECMAScript 的一定熟悉程度才能相得益章、共取其利,不然只是讓你的學習之路備感艱難。
TypeScript 是一個以 JavaScript 語言為基礎,所延伸出來的另一種超集的程式語言,也就是說 TypeScript 涵蓋了幾乎目前 ECMAScript 標準的新式語言範圍,並額外加了許多關於資料類型的預先定義與相互檢查部份。
學習 TypeScript 需要有對新式的 ECMAScript 的一定熟悉程度才能相得益章、共取其利,不然只是讓你的學習之路備感艱難。
本篇部落格原本寫於 2016/10 ,此篇為 2020/7 修改版。
這些問題可能是在學習 React Native 之前會產生的,在這裡分享一些解答給有興趣投入的開發者參考。
Docusaurus是一個產生靜態網站的工具(static-site generator,雖然官方的Github中不以這個關鍵字稱它)。它使用了 React 技術,提供快速簡易的建置、佈署與維護文件型的網站。本文提供了v2的簡單介紹與建置說明。
Node.js可以直接使用ES6 module新語法,而不需要透過babel等編譯器,在Node.js 12(2019-04-23發佈) 版本後,支援了新的ECMAScript module(ESM)改進。13版本後可以更容易的使用 ESM 語法。
新的部落格正式上線了(2020/07/05)。
2020/7 註:請參考這個儲存庫中的更動: react-env
React Native 專案並沒有內建 eslint 模組,所以需要在專案建立後手動進行設定。有很多種設定的方式,這裡是使用 react-app 的設定值(Create React App 使用的)為基礎,以及針對 Visual Studio Code 編輯器的設定,其它設定方式可再參考最後的參考資料中的設定。
自從 Create React Native App(CRNA) 這個專案在 2018 年 9 月宣布棄用,與 Expo 工具合併後,建立 React Native 專案的方式,又變得有點不太一樣。未來有可能還會再變動。
Flexbox 排版的全名是Flexible Box Layout Module(彈性的盒排版模組),是由 W3C 所制定的 CSS3 排版模組。Flexbox 的目的是提供更有效率的排版、對齊與分佈空格在容器之中的項目,甚至是在項目的尺寸大小是未知或動態的情況。
測試 Gatsby 時,使用下面的指令只能在同一台機器上用 localhost
測試:
Temporal Dead Zone(TDZ)是 ES6(ES2015)中對作用域新的專用語。TDZ 名詞並沒有明確地寫在 ES6 的標準文件中,一開始是出現在ES Discussion討論區中,是對於某些遇到在區塊作用域綁定早於宣告語句時的狀況時,所使用的專用術語。
以英文名詞來說明,Temporal 是"時間的、暫時的"意義,Dead Zone 則是"死區",意指"電波達不到的區域"。所以 TDZ 可以翻為"時間上暫時的無法達到的區域",簡稱為"時間死區"或"暫時死區"。