zoukankan      html  css  js  c++  java
  • vue调用高德地图:vue-amap

    vue调用高德地图拢共分三步

    1.去高德开发者平台申请key;
    2.安装vue-amap;
    3.使用组件调用地图

    2.vue安装vue-amap

    npm安装

    npm install vue-amap --save
    

     

    CDN

    目前可通过 unpkg.com/vue-amap 获取最新版本的资源。

    <script src="https://unpkg.com/vue-amap/dist/index.js"></script>
    

    main.js引入vue-amap

    // 引入vue-amap
    import AMap from 'vue-amap';
    Vue.use(AMap);
    
    // 初始化vue-amap
    AMap.initAMapApiLoader({
      // 高德的key
      key: 'YOUR_KEY',
      // 插件集合 (插件按需引入)
      plugin: ['AMap.Autocomplete', 'AMap.PlaceSearch', 'AMap.Scale', 'AMap.OverView', 'AMap.ToolBar', 'AMap.MapType', 'AMap.PolyEditor', 'AMap.CircleEditor']
    });
    

    3.组件里调用高德地图

    需要注意:<el-amap>一定要设置宽高,不然地图不会显示。或者给外面套一个div,给div设置宽高也行。

    vue-amap官网:https://elemefe.github.io/vue-amap/#/
    高德开放平台:http://lbs.amap.com/

    vue高德地图TypeError: v.w.uh is not a constructor错误

    这是由于地图实例是异步加载的当.vue文件开始加载地图的时候地图还没完成初始化而获取不到地图实例造成的。

    错误代码
    main.js(初始化地图)

    import Vue from 'vue'
    import VueAMap from 'vue-amap'
    Vue.use(VueAMap);
    VueAMap.initAMapApiLoader({
        key: '3b576d3486dc84adc303919ebc399dba',
        plugin: ['AMap.Autocomplete', 'AMap.PlaceSearch','AMap.Scale', 'AMap.OverView', 'AMap.ToolBar', 'AMap.MapType', 'AMap.Geolocation','AMap.Geocoder', 'AMap.AMapManager', 'AMap.Marker'],
        v: '1.4.4'
    

    .vue组件中(直接使用)

    解决办法:不在main.js中初始化地图,而是在要使用地图的组件中初始化地图(并且是在vue实例之前初始化)

    <script>
      import VueAMap from 'vue-amap'
      VueAMap.initAMapApiLoader({
        key: '3b576d3486dc84adc303919ebc399dba',
        plugin: ['AMap.Autocomplete', 'AMap.PlaceSearch','AMap.Scale', 'AMap.OverView', 'AMap.ToolBar', 'AMap.MapType', 'AMap.Geolocation','AMap.Geocoder', 'AMap.AMapManager', 'AMap.Marker'],
        v: '1.4.4'
      });
      import n from '../assets/n'
      const exampleComponents = {
          props: ['text'],
          template: `<div>text from  parent: {{text}}</div>`
      }
      export default {
    

      具体高德地图,获取点击点的经纬度,地图加标记。参照项目 mosilingWEB

  • 相关阅读:
    HDU 2888 Check Corners (模板题)【二维RMQ】
    POJ 3264 Balanced Lineup(模板题)【RMQ】
    poj 3368 Frequent values(经典)【RMQ】
    SPOJ RPLN (模板题)(ST算法)【RMQ】
    UVA 796 Critical Links(模板题)(无向图求桥)
    UVA 315 Network (模板题)(无向图求割点)
    POJ 2029 Get Many Persimmon Trees (模板题)【二维树状数组】
    poj 3067 Japan 【树状数组】
    POJ 2481 Cows 【树状数组】
    POJ 1195 Mobile phones【二维树状数组】
  • 原文地址:https://www.cnblogs.com/haonanZhang/p/11399905.html
Copyright © 2011-2022 走看看