關閉 Windows 終端機後 npm 進程不會退出

關閉 Windows 終端機後 npm 進程不會退出

這似乎是 npm 或 Windows 終端機中的一個錯誤,或者可能有一個我不知道的設定。我有一個簡單的節點應用程序,我在其中安裝了express,並且有一個索引.js包含以下程式碼的檔案:

import express from 'express';

const port = process.argv[2]
const app = express();
app.get('/', (req, res) => res.send(`Hello from port ${port}`))
app.listen(port, () => console.log('Server is running at http://localhost:' + port));

我的裡面也有這個包.json:

"scripts": {
  "start": "node index.js"
}

然後我在專案目錄中開啟 Windows 終端機並執行npm start 3000,然後造訪 http://localhost:3000 ,然後關閉終端機。當我刷新頁面時,我可以看到伺服器仍在運行,除了重新登入使用者之外沒有其他方法可以停止它。

透過在 Power Shell 或 CMD 上執行該命令,或直接node index.js在 Windows 終端機上執行該命令可以解決該問題。因此,不知何故,Windows Terminal 和 npm 的組合似乎導致了這個問題。

有誰知道如何避免這種情況並確保當我關閉 Windows 終端時進程停止?

相關內容