Если findbyidanddelete () не находит пользователей, блок catch должен быть выполнен? - PullRequest
0 голосов
/ 02 мая 2020

Кодовое изображение

Итак, я читаю это nodejs руководство в формате PDF и нашел его.

Почему существует if (! User) условия Если ни один пользователь не будет найден, выполнение будет переходить к блоку перехвата, поэтому я действительно не могу понять, когда будет выполняться этот оператор.

Было бы действительно полезно, если бы кто-то мог объяснить это мне.

1 Ответ

0 голосов
/ 02 мая 2020

Сложно сказать без реализации User.findByIdAndDelete.

Но возможно, если в запросе нет параметра id (ie req.params.id равно undefined ), код выдаст ошибку, падающую на оператор catch (в любом случае пользователю может быть полезно иметь хотя бы e.message или e.name, если оно присутствует) ...

Но это чистое предположение:)


РЕДАКТИРОВАТЬ

Я нашел исходный код mon goose на github !

функция Model.findByIdAndDelete может бросить TypeError, если arguments.length === 1 && typeof id === 'function'

Я нашел это здесь

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...