VS Code Intellisense для javascript не дает предложений по методу

Я безуспешно искал ответ на этот вопрос. VSCode предлагает несколько предложений, как в этом примере:

введите здесь описание изображения

Однако многие предложения не отображаются. Например, при передаче события не предлагается e.preventDefault или какие-либо связанные методы или данные, которые будут сопровождать событие.

В учебнике, который я смотрю, я не знаю, используют ли они «дополнения javascript» с Sublime или у них есть расширение в VSCode, но если это возможно сделать с помощью Visual Studio, я бы очень хотел продолжить его использование.

Пример из руководства ниже: введите здесь описание изображения


person Efie    schedule 17.04.2018    source источник


Ответы (1)


Во многих случаях VS Code может определять типы, но иногда вам нужно явно аннотировать их с помощью jsdocs (подробнее).

В случае addItem добавьте аннотацию jsdoc @param, указывающую, что e является Event:

/**
 * @param {Event} e
 */
function addItem(e) { ... }

Это не требуется, если вы используете встроенную функцию для addEventListener, потому что в этом случае мы можем вывести тип:

obj.addEventListerner('submit', function(e) { ... })
person Matt Bierner    schedule 17.04.2018