Я использую
'google-map-react'
При использовании без Next.js все работает хорошо
Но с использованием Next.js карта появляется лишь только при перезагрузке страницы с картой, а если перейти на страницу с картой через Link то карта не отображается
В чем причина?
Файл с картой:
import React, { Component } from 'react';
import PropTypes from 'prop-types';
import { connect } from 'react-redux';
import { Helmet } from 'react-helmet';
import GoogleMapReact from 'google-map-react';
import { bindActionCreators } from 'redux';
import { getRestaurants, setRestaurants } from '../../store/actions/addressActions';
import {
DEFAULT_CENTER,
getRestaurantLocation,
GOOGLE_MAPS_API_KEY,
getRestaurantWorkingTimes,
isClient
} from '../../utils';
import { sendPageView } from '../../googleAnalyticsHelper';
import { withRouter } from 'next/router';
class RestaurantManager extends Component {
componentDidMount() {
const { router, ssrProps, addressData, boundSetRestaurants, boundGetRestaurants } = this.props;
sendPageView(router.asPath, 'Restoranlar sayfası'); //for ga
if (isClient() && ssrProps.addressData.restaurants.length && !addressData.restaurants.length) {
boundSetRestaurants(ssrProps.addressData.restaurants);
}
}
render() {
return <div className="restaurant-map">
<Helmet title="En Yakın Pizza Hut Restoranları">
<meta name="description"
content="Size en yakın Pizza Hut restoranlarını görüntüleyebilir, açılış-kapanış saatleri ve adres bilgilerini görüntüleyebilirsiniz."/>
</Helmet>
<GoogleMapReact
bootstrapURLKeys={GOOGLE_MAPS_API_KEY}
defaultZoom={12}
center={DEFAULT_CENTER}
/>
</div>;
}
}