Я новичок в Typescript, и хотя это увлекательно и спасает жизнь, эта ошибка довольно крепкий орешек.
Ошибка TypeScript: нетипизированные вызовы функций могут не принимать аргументы типа. ТС2347
Не могли бы вы сказать мне, что нужно улучшить в классе ниже, чтобы избавиться от этой ошибки?
вот и весь класс
import React, { FunctionComponent } from 'react'
import { ListGroup } from 'react-bootstrap'
import { connect } from 'react-redux'
type StateProps = {
mbzArtists: IMBZArtist[],
releaseArtistID: string
}
type DispatchProps = {
findMBZReleases: (artistID: string) => void,
}
type OwnProps = {}
type MBZSearchResultsProps = StateProps & DispatchProps & OwnProps
const MBZSearchResults: FunctionComponent<MBZSearchResultsProps> = ({ findMBZReleases, mbzArtists, releaseArtistID }) => {
return (
<div className = "MBZSearchResults">
// div content
</div>
)
}
const mapStateToProps = (state: AppState) => {
return {
mbzArtists: state.musicBrainz.mbzArtists,
releaseArtistID: state.musicBrainz.artistReleaseID
}
}
const mapDispatchToProps = (dispatch: any): DispatchProps => {
return {
findMBZReleases: (artistID: string) => dispatch(Actions.MBZActions.findMBZReleases(artistID))
}
}
export default connect<StateProps, DispatchProps, OwnProps>(mapStateToProps, mapDispatchToProps)(MBZSearchResults)
Если вам нужна дополнительная информация, пожалуйста, дайте мне знать.
Спасибо.





Как указано в сообщении об ошибке.
TypeScript error: Untyped function calls may not accept type arguments. TS2347
Функция подключения не принимает аргументы типа.
Измените подключение экспорта к этому:
export default connect(mapStateToProps, mapDispatchToProps)(MBZSearchResults)
Если мы сделаем это так, то для этого компонента не будет проверки свойств, и при его вызове можно будет указать любое количество свойств. Я уже пробовал это, и типы и способ написания этого компонента были исследованы, прежде чем перейти к SO. Вы пробовали это на своей стороне?
Кажется, проблема устранена путем изменения оператора экспорта, как показано ниже:
const component: React.FunctionComponent<OwnProps> =
connect(mapStateToProps, mapDispatchToProps)(MBZSearchResults)
export default component
Могу ли я получить комментарий от пользователей машинописного текста, чтобы сообщить мне, если это путь?
Я понимаю это как способ разделения общедоступных и внутренних реквизитов, которые будут использоваться вашим компонентом. Общедоступные реквизиты — это те реквизиты, которые будут изменены/переданы другими компонентами/вмешательством пользователя. Внутренние/приватные реквизиты — это такие реквизиты, которые каким-то образом унаследованы; например, реквизит «навигация», если вы используете реагирующую навигацию. Следовательно, вы не хотите, чтобы ваши пользователи могли возиться с этими внутренними реквизитами.
Кажется, проблема устранена путем изменения оператора экспорта, как показано ниже: const component: React.FunctionComponent<OwnProps> = connect(mapStateToProps, mapDispatchToProps)(MBZSearchResults) export default component Могу ли я получить комментарий от пользователей машинописного текста, чтобы сообщить мне, если это путь?