Я использую семантическое реагирование пользовательского интерфейса как библиотеку пользовательского интерфейса и реагирую на отображение карты gl в моем приложении реакции. Но Карты, созданные из response-map-gl, занимают не всю ширину столбца. Пожалуйста, найдите изображение ниже:
Пунктирная линия представляет столбец. Там все еще достаточно ширины для растяжения карты. Но согласно документам мы должны предоставить ширину и высоту карты в пикселях.
Код контейнера указан ниже:
render() {
return (
<Grid style={{ padding: '20px' }}>
<Grid.Row>
<Grid.Column mobile={16} computer={12} style={{ border: 'dotted', paddingLeft: 0 }}>
<PincodesMap
viewPort={this.props.viewPort}
handleViewportChange={this.handleViewportChange.bind(this)}
/>
</Grid.Column>
<Grid.Column mobile={16} computer={4} style={{ border: 1 }}>
This is test
</Grid.Column>
</Grid.Row>
</Grid>
);
}
Принимая во внимание, что компонент, который содержит карту, выглядит следующим образом:
import React from 'react';
import ReactMapGL from 'react-map-gl';
const PincodesMap = ({ viewPort, handleViewportChange }) => (
<ReactMapGL
{...viewPort}
mapStyle="mapbox://styles/mapbox/dark-v9"
mapboxApiAccessToken="key"
onViewportChange={handleViewportChange}
/>
);
export default PincodesMap;
Код области просмотра для карты приведен ниже:
viewPort: {
width: 800,
height: 800,
latitude: 21.1458,
longitude: 79.0882,
zoom: 4
}
Мы не можем указывать ширину в процентах. Как сделать так, чтобы он отображался на всю ширину? Кроме того, как автоматически изменить размер карты на мобильном телефоне?
Спасибо