Процесс npm не завершается после закрытия Windows Terminal

Процесс npm не завершается после закрытия Windows Terminal

Похоже, это ошибка либо в npm, либо в Windows Terminal, или, возможно, есть настройка, о которой я не знаю. У меня есть простое приложение node, в котором я установил 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 Terminal в каталоге моего проекта и делаю npm start 3000, затем захожу на http://localhost:3000 и затем закрываю терминал. Когда я обновляю страницу, я вижу, что сервер все еще работает, и нет способа остановить его, кроме как повторно войти в систему пользователя.

Проблема решается либо запуском команды в Power Shell или CMD, либо прямым запуском node index.jsв Windows Terminal. Так что, похоже, проблема в сочетании Windows Terminal и npm.

Кто-нибудь знает, как этого избежать и убедиться, что процесс останавливается при закрытии Windows Terminal?

Связанный контент