vue使用高德地图

1.在下载地图组件

npm install vue-amap --save

2.在main.js中引入

import VueAMap from 'vue-amap'
Vue.use(VueAMap)

VueAMap.initAMapApiLoader({
        key: '你的key值',
        plugin: ["AMap.Geolocation","AMap.CircleEditor","AMap.MarkerClusterer","MarkerClusterer",'AMap.Map'],
        v: '1.4.4',
});

3.在页面组件中使用

<template>
	<div>
  		<el-amap vid="amapDemo" :amap-manager="amapManager" :center="center" :zoom="zoom" :events="events" class="amap-demo"></el-amap>
  		<el-amap-marker
          v-for="item in district"
          :content="item.contentText"
          :position="item.position"
          :offset="item.offsetText"
          :key="item.id"
        ></el-amap-marker>
 	</div>
</template>

<script>
import { AMapManager, lazyAMapApiLoaderInstance } from "vue-amap";
let amapManager = new AMapManager();
export default {
  data() {
    let self = this;
    return {
      amapManager,
      map: null,   
      zoom: '',  //地图展示大小               
      center: [120.17, 30.25], //地图中心位置
      },
      district:'',//地图上点的数据
       events: {
        //创建地图实例
        init(o) {
          lazyAMapApiLoaderInstance.load().then(() => {
            self.inintMap();
          })
        }
      }
   }
 },
 methods: {
 inintMap() {
      // 回调地图实例
      this.map = amapManager.getMap();
      /**
       *浏览器定位
       */
      var geolocation = new AMap.Geolocation({
        enableHighAccuracy: true, //是否使用高精度定位,默认:true
        timeout: 100, //超过10秒后停止定位,默认:5s
        buttonPosition: "RB", //定位按钮的停靠位置
        buttonOffset: new AMap.Pixel(-100, 110), //定位按钮与设置的停靠位置的偏移量
        zoomToAccuracy: true //定位成功后是否自动调整地图视野到定位点
      });
      this.map.addControl(geolocation);
      geolocation.getCurrentPosition((status, result) => {
        if (status == "complete") {
          this.zoom = 11.5; //地图挂在完成显示大小
          let lng = result.position.lng;
          let lat = result.position.lat;
          this.centerS = [lng, lat];  //定位的位置
        } else {
			//地图创建失败
        }
      });

      //监听地图缩放比例比例 (根据地图大小显示不同点,来创建创建聚合效果)
      this.map.on("zoomend", evt => {
        var offsetPo = this.map.getZoom();
        console.log(offsetPo )  //地图缩放比例比例
      })
    },
    //将数接口的数据挂在地图上
    Dian(){
    	let data = "接口数据"
		 datas.forEach(item => {
              item.position = item.site.split(",");
              item.contentText = ` <div  class="ampss">${item.item_name} </div>`;
              item.events = {
                click: () => this.onAmpAll(item)
              };
	},
	onAmpAll(res) {
	 console.log('点击了')
	}
 }



<style lang="less">
.container {
  width: 100%;
  height: 100%;
  position: absolute;
  left: 50%;
  top: 50%;
  transform: translate3d(-50%, -50%, 0);
  /* border: 1px solid #999; */
}
</style>
  • 1
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
Vue使用高德地图可以通过以下步骤进行: 1. 注册并登录高德地图开放平台,申请密钥。 2. 安装高德地图加载器,可以使用命令`npm install vue-amap --save`进行安装。 3. 在Vue组件中引入vue-amap模块。 4. 封装一个自定义地图组件,并在组件中初始化地图。 5. 可以使用高德地图提供的API进行关键词搜索和定位到搜索结果的位置。 6. 添加放大缩小地图、转盘等功能可以使用高德地图的控件或API进行实现。 7. 可以通过点击地图获取经纬度信息。 8. 地图上可以绘制标记点、圆形、曲线、矩形和多边形等。 9. 可以使用相关方法清除地图上的绘制内容。 总结起来,在Vue使用高德地图,首先需要安装相关依赖并注册密钥,然后引入模块并在组件中初始化地图,最后可以根据需求使用高德地图的API实现各种功能。<span class="em">1</span><span class="em">2</span><span class="em">3</span> #### 引用[.reference_title] - *1* *3* [在Vue使用高德地图](https://blog.csdn.net/weixin_44224921/article/details/126105778)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v93^chatsearchT3_1"}}] [.reference_item style="max-width: 50%"] - *2* [Vue使用高德地图](https://blog.csdn.net/TanHao8/article/details/117048193)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v93^chatsearchT3_1"}}] [.reference_item style="max-width: 50%"] [ .reference_list ]

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值