本文分享筆者使用 TypeScript 編寫運行 Node 應用的一些些經驗。基本只須要 3 分鐘,便可實現 node + ts 的開發環境配置。html
好比筆者要用 ts 寫個 socket Node 應用。先用 tree 命令看項目結構。node
$ tree -L 1 socket/
socket/
├── main.ts
├── node_modules
├── package.json
├── static
└── tsconfig.json
2 directories, 3 files
複製代碼
配置 ts 配置 tsconfig。固然下述配置能夠進行調整,須要留意的是 moduleResolution 配置來指定 node 端的模塊尋址算法。能夠參考官網文檔 Module Resolution。git
{
"compilerOptions": {
"target": "es6",
"module": "commonjs",
"moduleResolution": "node",
"downlevelIteration": true,
"allowSyntheticDefaultImports": true,
"esModuleInterop": true
}
}
複製代碼
在項目中安裝 typescript ts-node-dev 兩個開發依賴。es6
$ yarn add typescript ts-node-dev -D
複製代碼
安裝完成後,而後配置 npm 腳本,好比 npm start 命令:github
{
"scripts": {
"start": "tsnd -P ./tsconfig.json --respawn ./main.ts"
}
}
複製代碼
tsnd 是 ts-node-dev 命令的縮寫。上述命令中,只進行了兩個配置,-P 表明着配置 tsconfig 的路徑,是 --project 的縮寫。--respawn 即爲觀察文件變動以從新運行腳本。更多配置參數能夠查看官網文檔 Github | ts-node-dev。平時筆者大約只須要上述兩個配置。算法
同時記得安裝 node.js 類型聲明包,這樣才能夠對 node.js 提供 API 方法有默認的類型提示和檢查。typescript
$ yarn add @types/node -D
複製代碼
運行開發環境。npm
$ npm start
複製代碼
以上簡單幾步便可。json
生產環境其實就很簡單了,基本上只須要使用 tsc 進行編譯成 js 便可。以下:bash
{
"scripts": {
"build": "tsc --project ./"
}
}
複製代碼
$ npm build
複製代碼
以上命令會尋找當前目錄下的 tsconfig,按照此配置編譯項目的 ts 文件。
更多 tsc 命令請參考 Compiler Options
畢竟你該有的煩惱,社區基本上都有解決辦法。接下來只須要盡情享受開發便可。筆者日常基本上依靠上述配置,編寫 e2e 測試、Node 應用、以及學習。十分便利。以上簡單的教程,但願也能幫到你們。