Объединение нескольких объектов в экспорт ReactJS - PullRequest
0 голосов
/ 09 июля 2019

Итак, у меня есть компонент React, который использует пакет google-maps-react вместе с redux

Теперь дело в том, что мне нужно экспортировать connect() и GoogleApiWrapper вместе. Я немного погуглил и нашел человека, который сделал это так:

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

Где Maps - имя класса.

К сожалению, я получаю эту ошибку: TypeError: Object(...)(...)(...) is not a function

Возвращается со строки GoogleApiWrapper

Кто-нибудь знает, почему это происходит? Они работают отдельно, но не вместе

1 Ответ

2 голосов
/ 09 июля 2019

Вы закрываете скобку раньше. GoogleApiWrapper

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

- это HOC, который вернет новый компонент, который вы затем передадите в connect.

Попробуйте это

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