Каким образом обновляется @ types / реагировать-данные-сетка, чтобы быть синхронизированной с репо реагирующей-сетки данных? - PullRequest
0 голосов
/ 09 июля 2019

В репо React-Data-Grid я вижу

export interface DataGridProps {

  columns: ColumnList;
  (...)
  rowRenderer?: React.ReactElement | React.ComponentType;
  rowGroupRenderer?: React.ComponentType;
  (...)

и

export default class ReactDataGrid extends React.Component<DataGridProps, DataGridState> { ... }

Итак, в определении ReactDataGrid мы видим присутствие rowGroupRenderer prop.

Однако этот реквизит недоступен в пакете @types/react-data-grid. Там есть тип с именем GridProps, но не DataGridProps. Кроме того, этот GridProps не соответствует экспортированному GridProps в файле Grid.tsx в репо React-Data-Grid.

Как обновляются типы в @ types / data-grid-types? Как это синхронизируется с проектом?

1 Ответ

0 голосов
/ 10 июля 2019

В этом конкретном случае вам не нужно использовать пакет @types , поскольку react-data-grid сам по себе написан на TypeScript и публикует его типы как часть npm. пакет (вы можете узнать из настройки types в package.json ). Таким образом, вы сможете удалить зависимость @types/react-data-grid, и реальные типы будут автоматически выбраны из самого пакета.

Как правило, пакеты , @types размещаются в репозитории DefinitiveTyped (@types/react-data-grid - это здесь ). Обновление пакетов этого типа - это ручной процесс, который иногда запускается пользователями пакета, если автору / сопровождающему не нужна поддержка TypeScript. Поэтому, если вы обнаружили проблему и успели внести исправление , это здорово!

(Что касается того, почему react-data-grid имеет пакет @types, хотя он экспортирует свои собственные наборы, я предполагаю «исторические причины» - возможно, он был написан в JS первоначально и преобразован в TS в какой-то момент. )

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...