48 lines
4.6 KiB
Markdown
48 lines
4.6 KiB
Markdown
---
|
||
title: Debugging Node files using CLI commands
|
||
localeTitle: Отладка файлов узлов с помощью команд CLI
|
||
---
|
||
## Отладка файлов узлов с помощью команд CLI
|
||
|
||
В этом уроке вы узнаете, как вы можете отлаживать код Node.js в командной строке. Ваш простой код JavaScript можно легко отладить с помощью DevTools в браузере. Для узла вы можете отлаживать свой код, не покидая свой интерфейс командной строки (CLI).
|
||
|
||
Допустим, у вас есть файл с именем `contents.js` . Вы должны запустить файл, используя команду `node` .
|
||
|
||
```bash
|
||
node contents.js
|
||
```
|
||
|
||
Это многое должно быть уже известно вам, так как вы пишете код Node.js. Теперь любые ошибки, которые появляются, должны быть отлажены. Чтобы запустить файл в режиме отладки, добавьте `inspect` ключевых слов во время запуска файла.
|
||
|
||
```bash
|
||
node inspect contents.js
|
||
```
|
||
|
||
Теперь эта команда откроет ваш файл в режиме отладки. Здесь вы можете шагнуть через свой код по одной строке за раз, нажав клавишу **N** на клавиатуре.
|
||
|
||
Отладчик начнется с первой строки. Нажимая **N** , вы можете переместить отладчик на следующую строку. Если в первой строке произошла ошибка, она отобразила бы ошибку вместо перехода ко второй строке. Это очень полезно. Если, например, на 17-й строке есть ошибка, она покажет вам ошибку перед движением вперед.
|
||
|
||
В вашей логике может быть ошибка, то есть вы хотите, чтобы определенное значение отображалось, но вместо этого оно показывает другое значение. В этом случае добавление `console.log()` s может помочь вам и в режиме отладки, будет легче определить причину ошибки.
|
||
|
||
* * *
|
||
|
||
Иногда иногда случается, что ваш исходный код огромен. Вы отправляетесь в режим отладки, чтобы отлаживать свои ошибки, и вы уверены, что ошибка связана с функцией в строке 52. Но поскольку режим отладки начинается с строки 1, у вас нет выбора, кроме как посещать строку 52 по очереди? Точно нет!
|
||
|
||
Просто добавьте `debugger` ключевых слов перед функцией.
|
||
|
||
```javascript
|
||
console.log("Outside the function....everything's going smoothly");
|
||
|
||
debugger;
|
||
|
||
function doesSomething() {
|
||
//some logic
|
||
console.log("Something went wrong inside here!");
|
||
}
|
||
```
|
||
|
||
Теперь откройте файл снова в режиме отладки и на этот раз нажмите **C** на клавиатуре.
|
||
|
||
Нажатие **N** перемещает отладчик на следующую строку, а нажатие **C** указывает отладчику пройти весь код за один раз. Это то же самое, что работать без режима отладки. _Но_ на этот раз ваш код имеет дополнение. Вы догадались - ключевое слово `debugger` . Нажатие кнопки **C** обычно запускает код до конца, но из-за добавления `debugger` он останавливается перед запуском функции.
|
||
|
||
Поэтому, после запуска вашего файла в режиме отладки, нажатие **C** пропустит код и остановится точно перед функцией по ключевому слову `debugger` . После этого вы можете начать выполнять функцию по одной строке за раз, пока не укажете свою ошибку. |