Kiedy uruchamiam mój serwer z node app.js
w linii poleceń (używając Git Bash), mogę go zatrzymać za pomocą ctrl + C.Węzeł JS ctrl + C nie zatrzymuje serwera (po uruchomieniu serwera z "npm start")
W moim pliku package.json mam to uruchomienie skryptu, który pozwala mi użyć polecenia npm start
aby uruchomić serwer:
"scripts": {
"start": "node app"
},
Kiedy to zrobić, serwer zacznie normalnie:
$ npm start
> [email protected] start C:\Projects\nodekb
> node app.js
Server started on port 3000...
Ale gdy teraz ctrl + C, serwer nie zostaje zatrzymany (proces węzła nadal pozostaje w menedżerze zadań). Oznacza to, że pojawia się błąd, gdy próbuję ponownie wykonać npm start
, ponieważ port 3000 jest nadal używany.
Podążam za tutorialem na youtube (video with timestamp), a kiedy ten facet ctrl + C znowu uruchamia npm start
, to działa normalnie.
Jakieś pomysły, dlaczego mój proces serwera nie jest zatrzymany, gdy używam ctrl + C? złożyć
Moi app.js razie potrzeby:
var express = require("express");
var path = require("path");
//Init app
var app = express();
//Load View Engine
app.set("views", path.join(__dirname, "views"));
app.set("view engine", "pug");
//Home Route
app.get("/", function(req, res) {
res.render("index", {
title: "Hello"
});
});
//Add route
app.get("/articles/add", function (req, res) {
res.render("add_article", {
title: "Add Article"
});
});
//Start server
app.listen(3000, function() {
console.log("Server started on port 3000...");
});
Dzięki!
Jakiego rodzaju terminala używasz? Czy próbowałeś bash w systemie Windows? Czy czekałeś na chwilę? Pamiętam, że węzeł na komputerach z systemem Windows jest dość wolny. – lumio
To jest problem z bash dla Windows i jest sporo problemów na GitHubie wokół niego [Like] (https://github.com/cbucher/console/issues/273) – Shivam
Próbowałem go na normalnym windowsie cmd, i działało tak, jak powinno. Wygląda na to, że to problem z grą git. Dzięki za pomoc! – Mat