UNPKG

@uiw/react-baidu-map-overview-map-control

Version:

Baidu Map map-overview-map-control Components for React.

45 lines (44 loc) 1.41 kB
"use strict"; Object.defineProperty(exports, "__esModule", { value: true }); exports.useOverviewMapControl = useOverviewMapControl; var _react = require("react"); var _reactBaiduMapMap = require("@uiw/react-baidu-map-map"); var _reactBaiduMapUtils = require("@uiw/react-baidu-map-utils"); function useOverviewMapControl() { let props = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {}; const [overviewMapControl, setOverviewMapControl] = (0, _react.useState)(); const { anchor, offset, size, isOpen } = props; const { map } = (0, _reactBaiduMapMap.useMapContext)(); (0, _react.useEffect)(() => { if (map && !overviewMapControl) { const instance = new BMap.OverviewMapControl({ anchor: anchor || BMAP_ANCHOR_TOP_LEFT, offset, size, isOpen }); map.addControl(instance); setOverviewMapControl(instance); return () => { map.removeControl(instance); }; } // eslint-disable-next-line react-hooks/exhaustive-deps }, [map]); (0, _reactBaiduMapUtils.useVisiable)(overviewMapControl, props); (0, _reactBaiduMapUtils.useEventProperties)(overviewMapControl, props, ['ViewChanged', 'ViewChanging']); (0, _reactBaiduMapUtils.useProperties)(overviewMapControl, props, ['Anchor', 'Offset', 'Size']); return { overviewMapControl, setOverviewMapControl }; }