Visual Studio Code ловит синтаксические ошибки - PullRequest
0 голосов
/ 30 марта 2020

Я использую код Visual Studio для кодирования Nodejs. Мне очень странно и досадно, что почти все, что я пишу, проходит до тех пор, пока во время выполнения не выходит из строя.

Например, я написал этот код

function validateRentalReturn(rental) {
    const schema = Joi.object({
        customerId: Joi.objectId().required,
        movieId: Joi.objectId().required
    });
    return schema.validate(rental);
}

и забыл добавить () в конце required() и он не жаловался или что-то еще, пока во время выполнения я не вызвал этот метод, и я начал получать следующую ошибку "movieId" failed custom validation because Cannot read property 'presence' of undefined.

Я не имел ни малейшего представления об этой ошибке, но, наконец, получил ее отсортированную, в intellisense она выглядит следующим образом

enter image description here

Теперь как следует я знаю, что required это property или function. Может кто-нибудь любезно объяснить, как я могу получить правильный Intellisense и обработку ошибок для Node js кода в VS-коде.

1 Ответ

1 голос
/ 30 марта 2020

Возможно, вы захотите использовать Typescript вместо vanilla Javascript. Синтаксис почти такой же, но типизированная версия Javascript. Кроме того, линтер также полезен для такого рода вещей. Для машинописного текста вы бы использовали TSlint, но вы можете использовать ESlint для чистого javascript. Надеюсь, это поможет!

...