我是Typescript的新手,尽管它令人着迷并且可以挽救生命,但是这个错误很难破解。
TypeScript错误:未键入的函数调用可能不接受类型参数。 TS2347
能否请您告诉我在下一个类中应该改进哪些内容以消除此错误?
这是整个班级
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)
如果您需要更多信息,请告诉我。
谢谢。
答案 0 :(得分:0)
如您发布的错误所述。
TypeScript错误:未键入的函数调用可能不接受类型 论点。 TS2347
connect函数不接受类型参数。
更改导出连接与此:
export default connect(mapStateToProps, mapDispatchToProps)(MBZSearchResults)
答案 1 :(得分:0)
通过更改出口声明,似乎可以解决此问题,如下所示:const组件:React.FunctionComponent = connect(mapStateToProps,mapDispatchToProps)(MBZSearchResults)出口默认组件我可以请打字稿用户发表评论,让我知道是否这是要走的路吗?