Мне, вероятно, нужно переосмыслить то, как мы структурируем наши компоненты React.Мы используем последние реагирующие сценарии, которые позволяют использовать Typescript, и по умолчанию включается isolatedModules
, что в настоящее время немного меня беспокоит.
Мы использовали для структурирования компонента, подобного этому:
Component
|_ Component.tsx
|_ index.ts
|_ types.ts
Component.tsx
содержит фактический компонент без объявлений index.ts
просто реэкспортирует все, поэтому мы можем иметь единственную точку входа и делать что-то вроде import Component, { ComponentType } from '@/Component';
types.ts
содержит фактические определения типов и экспортирует большинство или все из них.
Пока все хорошо, и это работает безisolatedModules
.Однако мы также экспортируем некоторые определения типов, эффективно реэкспортируя интерфейсы, указанные в Component/types.ts
.Это не будет работать, так как сам TypeScript больше не будет переносить код.
Как я могу реэкспортировать это, не имея отдельного оператора импорта, переходящего к @/Component/types
(который в любом случае может быть более простым)