vue加入高德地图

vue加入高德地图

网上找了很多相关的东西,有些地方就一点小错误,但是让人摸不着头脑,以下是自己运用到工程项目中的代码,分享给大家。

1.Vue中安装

npm install vue-amap --save

2.main.js引用

在网上,好多都是import AMap,其实这样会和原生的高德地图产生冲突,我就是这样的。一直显示不了地图。后面改为这个名字,就显示出来了。当然主要页面也得写正确

import VueAMap  from 'vue-amap'

Vue.use(VueAMap );
Vue.config.productionTip = false;
// 初始化vue-amap
VueAMap .initAMapApiLoader({
    // 高德key
    key: '37f05ef459ba1b315d7ce12932846be1',
    // 插件集合 (插件按需引入)
    plugin: ['AMap.Geolocation','AMap.OverView','AMap.PlaceSearch'],
    v: '1.4.4'
    //,'AMap.CircleEditor','AMap.MapType', 'AMap.PolyEditor','AMap.Autocomplete', 'AMap.PlaceSearch'
});

3. 主要的界面

template里面代码如下

<div>
        <el-button type="text" @click="changeShow" class="mapstyle" >点击显示地图</el-button>
    </div>
    <div v-show="showmap">
        <div class="amap-page-container" >
            <el-amap vid="amap" :plugin="plugin" class="amap-demo" :center="center">
            </el-amap>

            <div class="toolbar">
            <span v-if="loaded">
              location: lng = {{ lng }} lat = {{ lat }}
            </span>
                <span v-else>正在定位</span>
            </div>
        </div>
    </div>
<style>
    .amap-page-container{
        height: 500px;
        width: 80%;
    }
    .mapstyle{
        font-size: 24px;
        font-weight: bold;
    }

</style>

基本上加上下面的代码就可以显示出地图,当然我写了一个函数,让他开始的时候显示,点击后不显示,再点击一次显示,主要是方便我自己加入新的代码。一个大地图显示占位置。

data() {
            let self = this;
            return {
                showmap:true,
                ip:'',
                counts:0,
                center: [121.59996, 31.197646],
                lng: 0,
                lat: 0,
                loaded: false,
                plugin: [{
                    pName: 'Geolocation',
                    convert: true,           //自动偏移坐标,偏移后的坐标为高德坐标,默认:true
                    showButton: true,        //显示定位按钮,默认:true
                    buttonPosition: 'RB',    //定位按钮停靠位置,默认:'LB',左下角
                    showMarker: true,        //定位成功后在定位到的位置显示点标记,默认:true
                    showCircle: true,        //定位成功后用圆圈表示定位精度范围,默认:true
                    panToLocation: true,     //定位成功后将定位到的位置作为地图中心点,默认:true
                    zoomToAccuracy:true,//定位成功后调整地图视野范围使定位位置及精度范围视野内可见,默认:f
                    extensions:'all',
                    enableHighAccuracy: true,//是否使用高精度定位,默认:true
                    events: {
                        init(o) {
                            // o 是高德地图定位插件实例
                            o.getCurrentPosition((status, result) => {
                                if (result && result.position) {
                                    self.lng = result.position.lng;
                                    self.lat = result.position.lat;
                                    self.center = [self.lng, self.lat];
                                    self.loaded = true;
                                    self.$nextTick();
                                }
                            });
                        }
                    }
                }]
            };
        },

点击显示函数,method方法

changeShow(){
                this.counts++;
                // this.counts++;
                if((this.counts)%2 !=0 ){
                    this.showmap = false;
                }else {
                    this.showmap = true;
                }
            },
  • 3
    点赞
  • 5
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
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 ]
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值