LonLatConvert - 副本.js 2.0 KB

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