Методы определения типов JSDoc в VS Code

#javascript #visual-studio-code #jsdoc

#javascript #visual-studio-code #jsdoc

Вопрос:

У меня возникла проблема при попытке документировать методы javascript,

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

Я действительно не думаю, что я должен устанавливать свойство для getMother(), а скорее метод.

Тем не менее, я не знаю, поддерживается ли это вообще (я использую VS Code).

Итак, приведенный пример может сработать, но он не добавляет скобки при автозаполнении и просто не является чистым, потому что мы рассматриваем его как свойство.

Я потратил несколько часов на поиск решения и потерпел неудачу. Я надеюсь, что кто-то знает ответ, не стесняйтесь спрашивать о более подробной информации.

Ответ №1:

Вы можете попробовать что-то вроде этого:

 // @ts-check

/*
 * @typedef {{
 * age: number,
 * getMother(arg1: string, arg2: string): HTMLCat
 * } amp; HTMLElement} HTMLCat
 */

/*
 * @type {HTMLCat}
 */
var cat;

cat.getMother('a', 'b').age
 

Я не уверен, что AdditionalCat именно делает, поскольку это всего лишь объект, который, вероятно, будет коррелировать с key/value добавленным мной индексом, поэтому я его опустил. Но этот синтаксис может быть немного проще рассуждать.

Вы можете найти больше примеров здесь: https://medium.com/better-programming/type-checking-in-vscode-without-typescript-eba92161cd08

Комментарии:

1. Отличный ответ! Мне интересно, почему было так сложно найти хороший пример / учебник. Я надеюсь, что, возможно, кто-то еще найдет это полезным.

2. Я обнаружил, что добавление необязательных параметров так же просто, как «имя?». Я был в замешательстве, потому что не знал, что существует два типа обозначений.