JserWang / rc-bmap

当百度地图遇上React,会产生怎样的火花🔥 🎉欢迎您的加入🎉
http://jser.wang/bmap/
MIT License
847 stars 37 forks source link

规划不显示是怎么回事? #65

Closed codepandy closed 6 years ago

codepandy commented 6 years ago

按照demo在程序中添加了规划路线,但地图上不显示。这是怎么回事,copy的demo代码。

JserWang commented 6 years ago

您好,能否提供具体代码?帮您具体分析一下。这么一个问题抛出来,很难判断。

codepandy commented 6 years ago
import React, { PureComponent } from 'react';
import {
  Map,
  Marker,
  Label,
  Symbol,
  InfoWindow,
  MapPane,
  WalkingRoute,
  getPoiByKeyword,
  SymbolShapeType,
  Animation,
  RidingRoute,
} from 'rc-bmap';

const point = {
  lng: 116.288655,
  lat: 40.05505,
};

const centerPoint = {
  lng: 116.307689,
  lat: 40.056974,
};
const labelOffset = {
  width: 0,
  height: -20,
};
const offset = {
  width: 3,
  height: 0,
};
const events = {
  open() {
    console.log('InfoWindow open');
  },
};

const style = {
  backgroundColor: 'red',
  color: '#fff',
};

export default class BDMap extends PureComponent {
  index = 0;

  constructor(props) {
    super(props);
    this.state = {
      route: '',
    };
  }

  getRoute = instance => {
    this.state.route = instance;
  };

  mapMounted = () => {
    const { route } = this.state;
    Promise.all([getPoiByKeyword('百度大厦'), getPoiByKeyword('北京邮电大学西门')]).then(res => {
      route.search(res[0], res[1]);
    });
  };

  render() {
    return (
      <div
        style={{
          height: '90vh',
        }}
      >
        <Map
          ak="819HPoYpPGx0ETyfTwrqkqKGWEFO5haH"
          center={centerPoint}
          scrollWheelZoom
          mapMounted={this.mapMounted}
        >
          <Marker point={centerPoint} label={<Label content="中心" offset={labelOffset} />} />
          <Marker point={point} label={<Label content="标签111111" offset={labelOffset} />} />

          <WalkingRoute
            getInstance={this.getRoute}
            showInMap
            location="北京"
            // 这里还有更多属性,可参考文档
          />
          <RidingRoute getInstance={this.getRoute} showInMap />
        </Map>
      </div>
    );
  }
}
codepandy commented 6 years ago

就是copy官网上的代码,没做什么改动。

JserWang commented 6 years ago

https://codesandbox.io/s/jnnxrwq5y3

您好,这是根据您提供的代码,在codesandbox中所运行的结果,唯一变动是ak,请问您所使用的ak是否包含了相关规划服务?以及所使用的域名是否正确。

codepandy commented 6 years ago

嗯,果然是apk的事,用你的apk就可以了。

JserWang commented 6 years ago

您可以根据自己的需求申请对应的ak,方便管理您实际使用中的配额,示例中的ak仅供参考使用。

如有问题,可继续提相关issue。

codepandy commented 6 years ago

嗯,好的,谢谢