2012-12-18 24 views
44

Próbuję użyć debuggera węzła. Mam uruchomiony node debug server, aby uruchomić mój serwer. Następnie mam:Sprawdzanie zmiennych za pomocą wbudowanego debugera węzła?

... 
var Workspace = mongoose.model('Workspace'); 
debugger; 

W tym momencie, zgodnie z oczekiwaniami, po uruchomieniu tego kodu pojawia się debugger. Jednak spodziewałbym się, że wszystkie bieżące zmienne zostaną ustawione, tak jak dzieje się to w debugerze Chrome.

Ale:

break in hotplate/node_modules/bd/lib/bd.js:133 
132 
133 debugger; 
134 
135 // Delete the ID and the version since there's no point, 
debug> Workspace 
ReferenceError: Workspace is not defined 

... więc jak mogę faktycznie sprawdzać bieżące zmienne?

Dodatkowe pytanie: czy istnieje JAKIKOLWIEK sposób, aby użyć narzędzi programistów Chrome (CTRL-J), aby połączyć się z węzłem i działać w ten sposób? (Jestem świadomy węzła inspektor, ale jest bardzo przestarzałe i ...)

Odpowiedz

70

Użyj polecenia repl (patrz trzeci przykład w docs)

break in hotplate/node_modules/bd/lib/bd.js:133 
132 
133 debugger; 
134 
135 // Delete the ID and the version since there's no point, 
debug> repl 
Press Ctrl + C to leave debug repl 
> Workspace 

Aktualizacja: premia pytanie - https://github.com/c4milo/node-webkit-agent

+0

co pytanie premiowe? : D – Merc

+0

nie jesteś pewien, czy jest dostępne rozwiązanie inne niż inspektor węzłów, ale możesz spróbować użyć zdalnego debuggera narzędzi programistycznych chrome - https://developers.google.com/chrome-developer-tools/docs/remote-debugging –

+2

zobacz odpowiedź na pytanie o bonus w aktualizacji :) –

Powiązane problemy