Я до сих пор не уверен, почему это происходит, однако я обнаружил, что вызов метода updateSize на карте после завершения загрузки устраняет проблему.
Я использую это в методе Iиспользуется для отслеживания загрузки плитки:
checkTilesLoaded() {
let totalStarted = 0;
let totalLoaded = 0;
this.state.source.on('tileloadstart', () => {
totalStarted += 1;
});
this.state.source.on('tileloaderror', () => {
totalLoaded += 1;
if (totalLoaded === totalStarted) tilesLoaded();
});
this.state.source.on('tileloadend', () => {
totalLoaded += 1;
if (totalLoaded === totalStarted) tilesLoaded();
});
const tilesLoaded = () => {
this.map.updateSize();
this.setState({
mapLoaded: true
});
}
}