UNPKG

rc-bmap

Version:

<p align="center"> <img src="https://bmap.jser-club.com/home.png" width="200px"> </p> <p align="center">基于 React 的百度地图组件</p>

89 lines (84 loc) 2.48 kB
import Map from './Map'; import BMapUtil from './utils/map'; import Util from './utils'; import initCustomControl from './Control/Custom'; import CityList from './Control/CityList'; import Copyright from './Control/Copyright'; import Navigation from './Control/Navigation'; import MapType from './Control/MapType'; import Scale from './Control/Scale'; import Panorama from './Control/Panorama'; import OverviewMap from './Control/OverviewMap'; import Geolocation from './Control/Geolocation'; import initCustomOverlay from './Overlay/Custom'; import Marker from './Overlay/Marker'; import InfoWindow from './Overlay/InfoWindow'; import Circle from './Overlay/Circle'; import Polygon from './Overlay/Polygon'; import Polyline from './Overlay/Polyline'; import Label from './Overlay/Label'; import GroundOverlay from './Overlay/GroundOverlay'; import PointCollection from './Overlay/PointCollection'; import Icon from './Overlay/Icon'; import IconSequence from './Overlay/IconSequence'; import Symbol from './Overlay/Symbol'; import AutoComplete from './AutoComplete'; import Constants from './constants'; import TileLayer from './Layer/TileLayer'; import TrafficLayer from './Layer/TrafficLayer'; import DistanceTool from './Library/DistanceTool'; import HeatMap from './Library/HeatMap'; import CurveLine from './Library/CurveLine'; export { BMapUtil, Util, initCustomControl, CityList, Copyright, Navigation, MapType, Scale, Panorama, OverviewMap, Geolocation, initCustomOverlay, Marker, Circle, Polygon, Label, InfoWindow, Polyline, Constants, AutoComplete, GroundOverlay, PointCollection, Icon, IconSequence, Symbol, TileLayer, TrafficLayer, DistanceTool, HeatMap, CurveLine, }; const addBMapScript = (ak, version = 3) => { if (!global.BMap && !global.mapLoader) { global.mapLoader = new Promise((resolve) => { const script = document.createElement('script'); script.src = `https://api.map.baidu.com/api?v=${version}.0&ak=${ak}&callback=initBMapCallBack`; document.head.appendChild(script); global.initBMapCallBack = () => { resolve(global.BMap); document.head.removeChild(script); delete global.mapLoader; delete global.initBMapCallBack; }; }); } return global.mapLoader; }; const initMap = async (container, config) => { await addBMapScript(config.ak, config.version); return new Map(container, config); }; export default initMap;