#reactjs #typescript
#reactjs #typescript
Вопрос:
Я пытаюсь перейти с JSX на TSX и сталкиваюсь со следующей проблемой:
- Я использую стороннюю библиотеку (
React-Filepond
) - Библиотека принимает несколько типов реквизитов
- Типы для этой библиотеки написаны человеком, не связанным с исходной библиотекой (
@types/react-filepond
), и эти типы охватывают только некоторые из принятых реквизитов.
Пример:
<FilePond
server={{
revert: () => this.props.updateUrl(this.state.oldImageUrl)
}}
/>
это приводит к ошибке типа, поскольку типы для server
prop определены как:
interface FilePondServerConfigProps {
server?: string | {
revert: string | ServerUrl;
}
}
и ни string
ни ServerUrl
не имеют отношения к моему случаю.
Итак, вопрос в том, как мне обойти это, каким-то образом переопределить мои типы, не отправляя PR в репозиторий types и не ожидая его одобрения?
Ответ №1:
Итак, вопрос в том, как мне обойти это, каким-то образом переопределить мои типы, не отправляя PR в репозиторий types и не ожидая его одобрения?
Обязательно отправьте PR.
Быстрое исправление
Используйте patch-package
для локального исправления: https://www.npmjs.com/package/patch-package