React使用百度地图实现轨迹动画

​ 本文介绍如何在react中使用百度地图实现轨迹动画。

1、使用百度地图实现轨迹动画

​ 在react中使用react-load-script加载scrip文件

1.1 在package.json文件中引入react-load-scrip
"react-load-script": "^0.0.6",
1.2 在文件中导入react-load-scrip
import Script from 'react-load-script';
1.3 加载rackAnimation_min.js文件
render() {
    return(
      <div>
        <Script
          url="//api.map.baidu.com/library/TrackAnimation/src/TrackAnimation_min.js"
          onCreate={() => this.handleScriptCreate()}
          onError={() => this.handleScriptError()}
          onLoad={() => this.handleScriptLoad()}
        />
      </div>
    );
}

2、创建基本地图

<Map 
    center={{ lng, lat }} 
    zoom="17" 
    style={{ height: '50vh' }} 
    enableScrollWheelZoom 
    ref={this.myRef} 
>
  <NavigationControl />
  <ScaleControl />
</Map>

3、自定义一个折线轨迹

const path = [{
    'lng': 116.297611,
    'lat': 40.047363
}, {
    'lng': 116.302839,
    'lat': 40.048219
}, {
    'lng': 116.308301,
    'lat': 40.050566
}, {
    'lng': 116.305732,
    'lat': 40.054957
}, {
    'lng': 116.304754,
    'lat': 40.057953
}, {
    'lng': 116.306487,
    'lat': 40.058312
}, {
    'lng': 116.307223,
    'lat': 40.056379
}];
const point = [];
for (let i: any = 0; i <path?.length; i++) {
    point.push(new BMapGL.Point(path[i].lon, path[i].lat));
}
const draw = new BMapGL.Polyline(point);






扫描下方二维码,关注公众号:程序进阶之路,实时获取更多优质文章推送。


扫码关注

评论