Как правильно аннотировать возвращаемый объект в JsDo c 3? - PullRequest
0 голосов
/ 07 апреля 2020

Я использую JSDo c 3.6.4 с моим проектом React. Я определил следующий хук ...

import { useState } from "react";

/**
 * The form hook.  Sets handlers and initial properties of a form. 
 *
 * @param {Object.<string, string>} initialValue
 * @returns {object}
 */
const useForm = (initialValue = {}) => {
  const [values, setValues] = useState(initialValue);

  const reset = () => {
    setValues(initialValue);
  };

  const handleChange = ({ target }) => {
    setValues((values) => ({
      ...values,
      [target.name]: target.value,
    }));
  };

  return {
    handleChange,
    values,
    reset,
    setValues,
  };
};

export default useForm;

Как правильно документировать то, что возвращается, когда возвращается несколько вещей? Я хотел бы поставить больше, чем {объект}, что у меня сейчас.

1 Ответ

0 голосов
/ 11 апреля 2020

Вы можете использовать аннотацию @typedef.

Как вы видите на скринкасте:

  • Код VS может сказать, что bar возвращает Foo
  • При наведении указателя мыши на @return {Foo} код VS может отображать свою форму

enter image description here

...