У меня есть библиотека реагирования, экспортирующая некоторые компоненты. Я комментировал эти компоненты комментариями jsdo c. Я использую визуальный студийный код. Я импортирую библиотечный модуль из другого модуля (сначала я скомпилировал библиотечный модуль).
При использовании импортированных компонентов я ожидаю, что vs c intellisense покажет мне документацию по этим компонентам. Вместо этого я вижу только их заглушку.
/**
* Module A
* @module A */
import React from 'react';
import PT from 'prop-types';
/**
* Test Component to check on JSdoc
* @param {string} text Enter test text here
*/
export const TestComponent = ({ text }) => <div>{text}</div>;
TestComponent.propTypes = {
text: PT.string
};
Модуль выше скомпилирован в папке dist.
Затем я использую этот модуль в другом проекте
import React from 'react';
import { TestComponent } from 'A';
const App = () => <TestComponent />;
После ввода имени компонента (TestComponent) в функции App, я ожидаю, что intellisense покажет мне документацию для этого компонента и свойства компонента.
Ожидаемое всплывающее окно (это изнутри модуля библиотеки):
![Expected popup content for vs intellisense](https://i.stack.imgur.com/geu9E.png)
Вместо этого я вижу это:
![Actual popup content for vs intellisense](https://i.stack.imgur.com/U3fUo.png)
Так чего мне не хватает Вот? Какая польза от JSdoc, если они видны только в одном модуле? Кроме того, protypes не так. Я указал строку proptype и внутри модуля кажется, что он работает, но при обращении к компоненту из другого модуля тип prop для свойства text
равен any
вместо string