LonLatConvert.js 2.0 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556
  1. import AMapLoader from '@amap/amap-jsapi-loader';
  2. export const getCoord = (parmas) => {
  3. return new Promise((reslove, reject) => {
  4. const { name, code, type } = parmas;
  5. window._AMapSecurityConfig = {
  6. securityJsCode: "a9557f94a84a95b515bec96c3bed93f1",
  7. };
  8. // 配置高德API的key
  9. AMapLoader.load({
  10. "key": "f4226f3eb5a974d153652665b64b497c",
  11. "version": "2.0",
  12. "plugins": []
  13. })
  14. .then((AMap) => {
  15. AMap.plugin('AMap.Geocoder', function() {
  16. var geocoder = new AMap.Geocoder({
  17. city: code // city 指定进行编码查询的城市,支持传入城市名、adcode 和 citycode
  18. });
  19. var addresses = [name];
  20. // 使用高德逆编码,将天地图转换成高德地图
  21. geocoder.getLocation(addresses, function(status, result) {
  22. if (status === 'complete' && result.info === 'OK') {
  23. const val = result.geocodes[0];
  24. reslove(val.location)
  25. }else{
  26. reject()
  27. }
  28. });
  29. });
  30. // var gps = [longitude, latitude]; //需要转换的gps类型的坐标
  31. // // var gps = [116.3, 39.9]; //需要转换的gps类型的坐标
  32. // // 初始化地图实例
  33. // console.log('AMap =', AMap, gps)
  34. // // window.map = new AMap.Map('container', {
  35. // // zoom: 10, // 设置地图显示的缩放级别
  36. // // center: [116.397428, 39.90923] // 设置地图中心点坐标
  37. // // });
  38. // //参数说明:需要转换的坐标或者坐标组,需要转换的坐标类型,转换成功后的回调函数
  39. // AMap.convertFrom(gps, "gps", function(status, result) {
  40. // console.log('status, result =', status, result)
  41. // //status:complete 表示查询成功,no_data 为查询无结果,error 代表查询错误
  42. // //查询成功时,result.locations 即为转换后的高德坐标系
  43. // if (status === "complete" && result.info === "ok") {
  44. // var lnglats = result.locations; //转换后的高德坐标 Array.<LngLat>
  45. // console.log(lnglats);
  46. // }
  47. // });
  48. })
  49. .catch(e => {
  50. reject()
  51. });
  52. })
  53. }