在 ReactJS 导出中组合多个对象

Combining multiple Objects in ReactJS export

所以我有一个使用 google-maps-react 包和 redux

的 React 组件

现在的问题是我需要一起导出 connect()GoogleApiWrapper。 我用谷歌搜索了一下,发现有人是这样做的:

export default connect(
  mapStateToProps,
  { saveMapCoords }
)(
  GoogleApiWrapper({
    apiKey: 'AIzaSyA5EqRGJ-YR-2ZCGxThhtFZKwNBy6wk73c'
  })
)(Maps)

其中 Maps 是 class 名称。

不幸的是我得到了这个错误: TypeError: Object(...)(...)(...) is not a function

这是从 GoogleApiWrapper

行返回的

有谁知道为什么会这样?他们分开工作但不一起工作

您之前正在关闭括号。 GoogleApiWrapper

GoogleApiWrapper({
  apiKey: (YOUR_GOOGLE_API_KEY_GOES_HERE)
})(MapContainer)

是一个 HOC,它将 return 一个新组件,然后您将在 connect.

中传递该组件

试试这个

export default connect(
    mapStateToProps,
    { saveMapCoords }
)(
    GoogleApiWrapper({
        apiKey: "AIzaSyA5EqRGJ-YR-2ZCGxThhtFZKwNBy6wk73c"
    })(Maps)
)