vue引入高德地图

1.首先在官网申请密钥:https://lbs.amap.com申请密钥

2. index.html中引入

<script type="text/javascript" src="https://webapi.amap.com/maps?v=1.4.15&key=刚申请的密钥&plugin=AMap.ControlBar">
</script>

3.建个放map的文件  maps.vue

<template>
  <div id="container" />
</template>

<script>
import AMap from 'AMap' /* 引入高德地图 */
export default {
  data() {
    return {
    }
  },
  mounted() {
    this.init()
/*init() 方法请在 mounted 生命周期中调用,因为如果在 created 阶段调用,会找不到 html 元素 div#container*/
  },
  methods: {
    init() {
      var map = new AMap.Map('container', {})
      var truckOptions = {
        map: map,
        policy: 0,
        size: 1,
        city: 'beijing',
        panel: 'panel'
      }
      var driving = new AMap.TruckDriving(truckOptions)

      var path = []
      path.push({ lnglat: [116.303843, 39.983412] })/* 起点 */
      path.push({ lnglat: [116.321354, 39.896436] })/* 途径 */
      path.push({ lnglat: [116.407012, 39.992093] })/* 终点 */

      driving.search(path, function(status, result) {
        // result即是对应的货车导航信息,相关数据结构文档请参考 https://lbs.amap.com/api/javascript-api/reference/route-search#m_DrivingResult
        if (status === 'complete') {
          // log.success('绘制货车路线完成')
        } else {
          // log.error('获取货车规划数据失败:' + result)
        }
      })
    }
  }
}
</script>

<style>
#container {width:300px; height: 408px; }
</style>

会报AMap 未定义

4.webpack.base.conf.js

在module.exports = {}里加入

externals: {
      'AMap': 'AMap' // 高德地图配置
    }

vue- element-admin是在vue.conf.js中加

vue.config.js 文件要自己创建,vue-cli 3.0 不会自动生成此文件。 此外,修改 vue.config.js 不会触发热加载,也就是修改之后你需要重新 run 一下你的项目,它才能生效。

重启-->

效果:

这里我需要做货车的线路index.html 引入的script  plugin=AMap.TruckDriving

<template>
  <div class="maps" >
    <div id="container"></div>
    <div id="panel"></div>
  </div>
</template>

<style lang="less" scoped>
.maps {
  width:100%;
  height: 450px;
  #container {
    width: 100%;
    height: 100%;
  }
  #panel {
    position: absolute;
    background-color: white;
    max-height: 95%;
    overflow-y: auto;
    top: 22px;
    right: 10px;
    width: 280px;
  }
  #panel .amap-lib-driving {
    border-radius: 4px;
    overflow: hidden;
  }
}

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值