原创 巧用 TypeScript(五)---- infer

介紹 infer 最早出現在此 PR 中,表示在 extends 條件語句中待推斷的類型變量。 簡單示例如下: type ParamType<T> = T extends (param: infer P) => any ? P : T; 在

原创 問答方式學 Node.js

Q: 好了,我們繼續談談 Node.js 吧,我記得上次說到了「非阻塞」和「事件驅動」,這引起了我的好奇心,但是又給我潑了一桶冷水,這兩個詞有點高端。 A:別急,我們先來看一個簡單的場景: 人人網刷朋友新鮮事你應該用過吧?實現這樣的功能有一

原创 巧用 TypeScript(三)

數組與元組創建一個數組很簡單:const arr = [1]; 複製代碼此時 TypeScript 將會推斷 arr 類型爲 number[]:arr.push('1'); // Error 複製代碼當數組元素具有其它類型時,可以通過類型

原创 使用 NestJS 開發 Node.js 應用

NestJS 最早在 2017.1 月立項,2017.5 發佈第一個正式版本,它是一個基於 Express,使用 TypeScript 開發的後端框架。設計之初,主要用來解決開發 Node.js 應用時的架構問題,靈感來源於 Angular

原创 巧用 TypeScript(二)

Decorator Decorator 早已不是什麼新鮮事物。在 TypeScript 1.5 + 的版本中,我們可以利用內置類型 ClassDecorator、PropertyDecorator、MethodDecorator 與 Par

原创 巧用 TypeScript (一)

以下問題來自於與公司小夥伴以及網友的討論,整理成章,希望提供另一種思路(避免踩坑)解決問題。 函數重載 TypeScript 提供函數重載的功能,用來處理因函數參數不同而返回類型不同的使用場景,使用時,只需爲同一個函數定義多個類型即可,簡單