Przydatna informacja na dziś: w TypeScript możemy deklarować dodatkowe pola na obiektach globalnych oraz modyfikować kształt interfejsów udostępnianych przez zewnętrzne biblioteki.
Czasami zdarza się, że jakiś skrypt jest dodawany przez tag <script>. Na domiar złego, ten skrypt tworzy obiekt globalny, którego nasz kompilator nie jest w stanie znaleźć. Co możemy w tym przypadku zrobić?
Sprawa jest dość prosta - wystarczy użyć opcji Declaration Merging, a konkretnie Global Augmentation. Za pomocą słów kluczowych `declare global` możemy wpływać na globalne interfejsy i dodawać do nich nowe pola.
Podobny mechanizm działa także dla modułów, tzn. możemy "naprawiać" deklaracje typów zewnętrznych bibliotek. W takim scenariuszu sprawdzi się Module Augmentation.
Więcej informacji znajdziecie tutaj.
#typescript

Zaloguj się aby komentować