Как я могу запустить перезапуск w630 -spector при перезапуске node?
Я использую node -инспектор много. Когда я редактирую свой код и перезапускаю, я получаю неизбежное
Отключено от цели
Ошибка при запуске нового процесса. Мне всегда нужно найти инспектор вкладки node и перезапустить его.
Мне было интересно, могу ли я избежать этого. Например, отправьте сообщение в node-inspector из node, чтобы сообщить о переходе на вкладку браузеров с запуском node -inpector.
Ответы
Ответ 1
Перекрестная проводка немного от this SO с обновлением к этой теме.
В стандартной панели разработчика Chrome (58) есть ссылка, которая открывает новое "безголовое" окно, которое волшебным образом восстанавливается до node, независимо от того, как приложение будет перезагружено/перезапущено.
Я запускаю Express.js, например. DEBUG=myapp:* supervisor -- --inspect bin/www &
и было сложно восстановить соединение с использованием нормального URL-адреса, который продолжает меняться. Но этот инструмент Chrome работает весь день, надежно подключаясь.
В разделе "Темы" > "Главная" вы увидите "доступный экземпляр Node. Connect". ![введите изображение здесь]()
Я считаю, что новое окно менее пригодно для использования, так как я предпочел бы вкладку, но автоподключение будет настолько надежным, что я буду жить с этим!
Единственный недостаток, который я обнаружил, - это когда он повторно соединяет его, очищает все точки останова.
Ответ 2
Вам не нужно перезапускать процесс Node Inspector, когда процесс отладки был перезапущен. Все, что вам нужно сделать, это перезагрузить вкладку браузера с помощью Node GUI инспекторов.
Я боюсь, что на данный момент нет простого способа автоматической перезагрузки страницы GUI Node Inspector, когда ваш отладочный процесс перезапускается. Вероятно, возможно выполнить какой-то активный опрос в бэкэнде Node Inspector, но это функция, которая должна быть реализована кем-то.
В зависимости от того, какая часть вашего приложения вы отлаживаете, вы можете найти полезную функцию "Live Edit". Он позволяет редактировать код из Node Inspector, сохранять изменения в среде исполнения Node/V8 и, возможно, вернуться на диск. Таким образом, вы не должны перезапускать отладочный процесс после внесения изменений.
Эта функция реализована в Node Inspector и выпущена в версии v.0.7.0. Подробнее см. issue # 266.
Ответ 3
Эта функция реализована в Node Inspector и выпущена в версии v.0.7.0. Подробнее см. issue # 266.
Предыдущий ответ здесь обход:
Я написал простой js script для выполнения greasemonkey/tampermonkey.
script ищет сообщение "Отключено от цели" на вкладке с адресом http://127.0.0.1:8080/debug?port=5858
. Когда сообщение будет видимым, страница перезагрузится, пока не исчезнет.
Это решение является обходным решением. Его нельзя считать идеальным решением (я согласен с Мирославом), здесь следует:
// ==UserScript==
// @name Reload node-inspector tab
// @version 0.1
// @description looks for the detached message and auto reload the page
// @match http://127.0.0.1:8080/debug?port=5858
// ==/UserScript==
var exec = function(){
setTimeout(function(){
var el = document.getElementsByClassName("help-window-title")[0];
if(el && el.innerHTML == "Detached from the target"){
location.reload();
} else {
setTimeout(function(){ exec(); }, 1000);
}
}, 1000);
};
exec();
Ответ 4
Конечно, это легко. Сначала установите npm install -g nodemon
Затем вы можете запустить node-inspector & nodemon --debug app.js
(заменив app.js на имя вашего script)
Хотя при синтаксической ошибке вам все равно придется перезагружать вкладку node -inpector вручную
Ответ 5
Шаг 1. не используйте node-inspector
- новая работа была отправлена командой chrome, которая не может быть интегрирована с модулем инспектора узлов. Двигаясь вперед, вы пропустите эти функции, если останетесь с node-inspector
.
Шаг 2. Для запуска вашего скрипта используйте: nodemon --inspect-brk yourScript.js
- часть brk создает автоматическую точку останова в первой строке кода. Если у вас еще не установлен nodemon, сначала сделайте это с помощью: npm install -g nodemon
.
Шаг 3. Затем откройте приложение Chrome, откройте инструменты разработчика Chrome (F12
или Ctrl+Shift+I
) и щелкните значок узла следующим образом:
![how to restart node.js debugger when saving a file in your project]()
Шаг 4. Внесите изменения в yourScript.js
- chrome devtools автоматически перезагружает отладчик для каждого изменения, которое вы вносите в свой проект. Это связано с тем, что nodemon просматривает папку проекта и сбрасывает процесс, который сбрасывает соединение с отладчиком.
Подробнее здесь: Отладка в 2017 году с помощью Node.js - я пишу это 29 августа 2019 года, но спустя 2 года все еще актуально.