2015-12-10 2 views
11

Недавно я установил NodeJS Tools for Visual Studio, который поддерживает поддержку сред узлов в VS. Примечательно, что он имеет возможность устанавливать отладочные точки останова из среды IDE.Как отлаживать задачи Gulp с помощью Node Tools для Visual Studio?

Мне непонятно, можно ли установить контрольные точки при отладке задач Gulp. Runner задачи имеет возможность обнаруживать задачу Gulp и выводить операторы console.log в окно, но я не нашел лучшего средства для отладки.

Я нашел этот пост некоторое время назад: How can I debug gulpfile.js when running it with Visual Studio Task Runner Explorer? Однако это сообщение не связано с NodeJS Tools для VS. Итак, я повторно задаю вопрос, чтобы принять этот плагин.

enter image description here

+0

Вы пробовали 'отладчик;'? Это работает для большинства javascript и использует хром-инструменты для разработчиков, нажав кнопку F12. вы также можете добавить точки останова здесь. – Tomaltach

+0

Я только что сделал, но безрезультатно. Проблема в том, что ожидаемый маршрут отладки заключается в создании/запуске проекта. Задачи Gulp - это всего лишь подмножество проекта и независимо от него, поэтому я не уверен, что есть поддержка для их отладки. И да, я знаю, как отлаживать в Chrome Dev Tools. :) Просто надеюсь, что вам не придется использовать дополнительные инструменты для запуска задач Gulp в Chrome, когда VS поддерживает отладку узла. –

+1

Попробуйте [сайт] (http://www.greg5green.com/blog/debugging-gulp-js-tasks/) – Tomaltach

ответ

4

Вы можете. Щелкните правой кнопкой мыши проект Node, выберите Свойства и настройте приложение следующим образом (на изображении default - задача Gulp, которую вы хотите запустить).

Debugging with VS

Альтернативный метод:

  1. В терминале, так и в каталоге, где находится gulpfile, запустить node --debug=44331 --debug-brk ../node_modules/gulp/bin/gulp.js default. В моем случае default - это имя задачи, которую я хочу запустить/отладить.
  2. В Visual Studio перейдите к Debug | Attach to Process. Выберите Node.js Remote debugging as Транспорт, а в квалификаторе выберите localhost:44331. Нажмите «Ввод», и вы увидите, что процесс «Узлы» появится в списке. Нажмите Attach.

Attach to Process

вуаля, контрольные точки поражаются.

Breakpoints are hit

Несколько вещей, чтобы заметить:

  • Если вы получите что-то вроде Unable to attach to process. Error 0x80004005 использовать другой порт. Я не мог заставить его работать с портом 5858.
  • Возможно, он не работает при первом подключении к процессу (см. Мой предыдущий скриншот, как я получил ECANCELED?). Попробуй еще раз.
+0

Спасибо, я получил это, чтобы работать. Я надеялся на что-то более удобное, чем запуск отладки одного запуска в то время с терминала, но я думаю, что это достаточно хорошо для нескольких раз, когда нужно отлаживать. – Alex

+0

Держись, я просто понял, что ты можешь. Я отредактирую этот ответ –

+0

Я получил это для работы раньше, но теперь я всегда получаю эту ошибку ECANCELED, когда я пытаюсь подключиться к процессу. Есть идеи? – Alex

Смежные вопросы