React component that wraps Popup.
import * as React from 'react';
import Map, {Popup} from 'react-map-gl';
function App() {
const [showPopup, setShowPopup] = React.useState(true);
return <Map
initialViewState={{
longitude: -100,
latitude: 40,
zoom: 3.5
}}
mapStyle="mapbox://styles/mapbox/streets-v9"
>
{showPopup && (
<Popup longitude={-100} latitude={40}
anchor="bottom"
onClose={() => setShowPopup(false)}>
You are here
</Popup>)}
</Map>;
}
anchor
: 'center' | 'left' | 'right' | 'top' | 'bottom' | 'top-left' | 'top-right' | 'bottom-left' | 'bottom-right' | undefinedA string indicating the part of the popup that should be positioned closest to the coordinate, set via longitude
and latitude
.
If unset, the anchor will be dynamically set to ensure the popup falls within the map container with a preference for 'bottom'
.
className
: stringSpace-separated CSS class names to add to popup container.
closeButton
: booleanDefault: true
If true
, a close button will appear in the top right corner of the popup.
closeOnClick
: booleanDefault: true
If true
, the popup will close when the map is clicked.
closeOnMove
: booleanDefault: false
If true
, the popup will closed when the map moves.
focusAfterOpen
: booleanDefault: true
If true
, the popup will try to focus the first focusable element inside the popup.
offset
: number | PointLike | Record\<string, PointLike>Default: null
A pixel offset applied to the popup's location specified as:
Negative offsets indicate left and up.
maxWidth
: stringDefault: 240px
A string that sets the CSS property of the popup's maximum width.
style
: CSSPropertiesCSS style override that applies to the popup's container.
onOpen
: (evt: PopupEvent) => voidCalled when the popup is opened.
onClose
: (evt: PopupEvent) => voidCalled when the popup is closed by the user clicking on the close button or outside (if closeOnClick: true
).