基于vue 2.X和高德地图的vue-amap组件获取经纬度

  今天我就讲了一下怎么通过vue和高德地图开发的vue-amap组件来获取经纬度。

  这是vue-amap的官网文档:https://elemefe.github.io/vue-amap/#/

  这是我的码云项目的地址:http://git.oschina.net/ye_a_rs/project-vue-ele/tree/master/src

  • vue init webpack 项目名称 创建一个项目
  • npm安装vue-amap组件 :
 npm install vue-amap --save
  • 在main.js引入vue-amap :
import Vue from ‘vue‘;
 import AMap from ‘vue-amap‘;
 import App from ‘./App.vue‘;

Vue.use(AMap);
AMap.initAMapApiLoader({
  key: ‘your amap key‘,
  plugin: [‘AMap.Autocomplete‘, ‘AMap.PlaceSearch‘, ‘AMap.Scale‘, ‘AMap.OverView‘,
 ‘AMap.ToolBar‘, ‘AMap.MapType‘, ‘AMap.PolyEditor‘,
‘AMap.CircleEditor‘,‘AMap.Geolocation‘] });
new Vue({
  el: ‘#app‘,
  render: h => h(App) })
  • initAMapApiLoader里面用到什么插件就在plugin里面写什么插件名;

  如果用到定位,就在app.vue这样写:

<template>
 <div id="app">
   <router-view name=‘index‘></router-view>
   <router-view name=‘others‘></router-view>
   <el-amap vid="amap" :plugin="plugin" class="amap-demo"></el-amap>
   <router-view></router-view>
   <!-- <foot></foot> -->
 </div>
</template>
<script>
// import foot from ‘./components/Footer‘;
export default {
 name: ‘app‘,
 data() {
   let self = this;
   return {
     positions: {
       lng: ‘‘,
       lat: ‘‘,
       address: ‘‘,
       loaded: false
     },
     center: [121.59996, 31.197646],
     plugin: [{
       pName: ‘Geolocation‘,
       events: {
         init(o) {
           // o 是高德地图定位插件实例
           o.getCurrentPosition((status, result) => {
             // console.log(result);  //  能获取定位的所有信息
             if (result && result.position) {
               self.str = result.formattedAddress;
               self.positions.address = self.str.substring(self.str.indexOf(‘市‘) + 1);
               self.positions.lng = result.position.lng;
               self.positions.lat = result.position.lat;
               self.positions.loaded = true;
               self.$nextTick();
               // 把获取的数据提交到 store 的数据中,以便其他单文件组件使用
               self.$store.commit(‘POSITION‘, self.positions);
               // console.log(self.positions);
               sessionStorage.setItem(‘id‘, JSON.stringify(self.positions));
             }
           });
         }
       }
     }]
   };
 }
 // components: { foot }
}
</script>
<style lang=‘scss‘>
@import ‘../static/hotcss/px2rem.scss‘;
@import ‘./common/css/resert.scss‘;
#app {
 height: 100%;
 .amap-demo {
   display: none;
 }
}
</style>
  • 在pName:写入‘Geolocation‘,并在main.js的AMap.initAMapApiLoader引入‘AMap.Geolocation’,在app里写以上代码,定位的所有信息都在o.getCurrentPosition((status, result) 的result里,再对里面进行解析、获取,可以将经纬度和地址通过sessionStorage的setItem储存。

原文地址:https://www.cnblogs.com/don-yang/p/8670782.html

时间: 2024-10-03 22:25:52

基于vue 2.X和高德地图的vue-amap组件获取经纬度的相关文章

高德地图AndroidSDK 路线规划详情获取

我们用高德地图SDK在进行路径规划后,除了将线路添加到地图时候,往往还需要获取线路的详细描述信息,比方说路线长度,所需时间.路线的每一段情况等,就如高度地图这样: 我们就简答实现下这个功能,首先进行公交线路查询(不清楚的同学可以看下demo),在查询结果中进行处理: ? 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41

JS爬取高德地图地址信息(周边设施经纬度)

需求:给定进百万小区名称及对应城市信息,通过高德获取其周边设施信息(交通.医疗.教育.生活设施) 高德JS API 爬取灵感来自高德开发支持的JS API,当然你也可以直接调用高德提供的api服务获取地址信息,但是api服务是有次数限制.而JS API的调用并没有次数限制,经我的验证一个爬取节点控制在500毫秒的抓取频率是没有限制的. https://lbs.amap.com/api/javascript-api/example/poi-search/keywords-search 高德地址信息

用高德地图API 通过详细地址获得经纬度

http://restapi.amap.com/v3/geocode/geo?key=xxxxxxxxxxxxxxxx&s=rsv3&city=35&address=福建省霞浦县水门畲族乡 String addressStr = "http://restapi.amap.com/v3/geocode/geo?key=xxxxxxxxxxxxxxxx&s=rsv3&city=028&address=";        String getA

高德地图 定位和位置信息获取

- (void)viewDidLoad { [super viewDidLoad]; self.navigationController.navigationBarHidden = YES; _mapView = [[MAMapView alloc] init]; _mapView.frame  =CGRectZero; [self.view addSubview:_mapView]; _mapView.showsUserLocation = YES; } -(void)mapView:(MAM

vue 调用高德地图

一. vue-amap,一个基于 Vue 2.x 和高德地图的地图组件 https://elemefe.github.io/vue-amap/#/ 这个就不细说了,按照其文档,就能够安装下来. 二. 按照官方提供的方法引入 1.修改webpac.base.conf.js文件 externals: { 'AMap': 'AMap' } 2.引入sdk引入有两种方式,一种是页面直接引入 <script type="text/javascript" src="http://w

【高德地图API】从零开始学高德JS API(一)地图展现

摘要:关于地图的显示,我想大家最关心的就是麻点图,自定义底图的解决方案了吧.在过去,marker大于500之后,浏览器开始逐渐卡死,大家都开始寻找解决方案,比如聚合marker啊,比如麻点图啊.聚合marker里面还有一些复杂的算法,而麻点图,最让大家头疼的,就是如何生成麻点图,如何切图,如何把图片贴到地图上,还有如何定位图片的位置吧.以前那么复杂的一系列操作,居然让云图的可视化操作一下子解决了.现在只要点一点鼠标,麻点图就自动生成了.真是广大LBS开发者的福音. 以前写过从零开始学百度地图AP

高德地图API笔记

一.图层类 1 二.调用高德地图 2 三.点标注 2 3.1使用自定义maker标注 2 3.2 Icon参数详情 3 3.3在地图上画圆 3 四.区域搜索 4 4.1 画边界函数 5 五.高德地图服务插件 6 5.1地点搜素 7 六. 海量点 8 一.图层类 var layerName = new AMap.TileLayer.类名 layerName.setMap(map); 类名     说明 TileLayer     切片图层类 TileLayer.Satellite  卫星图层类,继

高德地图根据关键词坐标拾取小工具

今天早上在写代码的时候,需要用到地图坐标拾取工具,我们用的是搞的地图,在高德地图API官方网站中没有找到相关的坐标拾取工具.在网上找到这么个小工具,与大家分享下! CSS 1 html { background-color: #fff; } 2 body, div, h1, h2, h3, h4, ul, li, form, input, dl, dt, dd, p { margin: 0; padding: 0; font-family: 微软雅黑; } 3 h3 { +font-size:1

高德地图组件在Android的应用以及Android与JavaScript的交互

最近在慕课网学习了关于高德地图组件的课程(其实就是一个广告,内容和官网的API完全一样),发现这个JavaScript API比Android API简单方便多了,于是就打算放在Android APP上来实现,花了一点小功夫,但是最终还是实现了,后来打算扩展的时候遇到个问题:就是高德官网有一个坐标拾取点(高德的坐标和我们平时取的坐标不一样,可以将高德坐标理解为中国的国标,直接获取的坐标是国际标准的坐标),后来发现有html文件直接实现了这个功能,于是就把这个html扒出来了,但是重点问题来了:如