跨平台使用高德地图服务

高德地图-初始化

目标:注册高德地图开放平台并初始化地图

步骤:

参考文档

流程:

  1. 注册&认证个人开发者===>创建web应用====>得到 key 和 jscode
  • key 7ad7e9d1784a9905562e90c73c679503
  • jscode ae504add6495e6e5f6aa3ae5ef3f4a6d
  1. 在vue3项目中使用

代码:

1.按 NPM 方式使用 Loader,安装

TypeScript 复制代码
pnpm i @amap/amap-jsapi-loader

2.配置安全密钥 securityJsCode

medicine/OrderExpress.vue

TypeScript 复制代码
// v2.0 需要配置安全密钥jscode
window._AMapSecurityConfig = {
  securityJsCode: ' '//加入密钥
}

3.扩展 Window 的类型

types/global.d.ts

TypeScript 复制代码
interface Window {
  _AMapSecurityConfig: {
    securityJsCode: string
  }
}

4.组件初始化的时候:加载高德地图需要的资源

Medicine/OrderExpress.vue

TypeScript 复制代码
import AMapLoader from '@amap/amap-jsapi-loader'

onMounted(async () => {
  // ... 省略 ...
  AMapLoader.load({
    key: '7ad7e9d1784a9905562e90c73c679503',
    version: '2.0'
  }).then((AMap) => {
    // 使用 Amap 初始化地图
  })
})

5.初始化地图,参考demo示例

TypeScript 复制代码
const app = new AMap.Map("map",{ //设置地图容器id
  zoom:12, //初始化地图级别
  mapStyle: 'amap://styles/whitesmoke' // 设置地图样式
});


<view id="map">...</view>

高德地图-物流轨迹

实现:使用高德地图api绘制物流轨迹

步骤:

  • 绘制轨迹
  • 绘制起点和终点位置

代码:

  1. 根据 参考示例-使用经纬度获取驾车规划数据,获取路线规划方案

说明❓:通过插件引入

TypeScript 复制代码
AMap.plugin('AMap.Driving', () => {
    const driving = new AMap.Driving({
      map: map, // 指定轨迹显示地图实例
      showTraffic: false // 关闭交通状态
    })
    // 开始位置坐标
    const startLngLat = [116.379028, 39.865042]
    // 结束位置坐标
    const endLngLat = [116.427281, 39.903719]

    driving.search(startLngLat, endLngLat, function (status: string, result: object) {
      // 未出错时,result即是对应的路线规划方案
    })
})
相关推荐
三小河4 小时前
Agent Skill与Rules的区别——以Cursor为例
前端·javascript·后端
Hilaku4 小时前
不要在简历上写精通 Vue3?来自面试官的真实劝退
前端·javascript·vue.js
三小河5 小时前
前端视角详解 Agent Skill
前端·javascript·后端
Aniugel5 小时前
单点登录(SSO)系统
前端
颜酱5 小时前
二叉树遍历思维实战
javascript·后端·算法
鹏多多5 小时前
移动端H5项目,还需要react-fastclick解决300ms点击延迟吗?
前端·javascript·react.js
serioyaoyao5 小时前
上万级文件一起可视化,怎么办?答案是基于 ParaView 的远程可视化
前端
万少5 小时前
端云一体 一天开发的元服务-奇趣故事匣经验分享
前端·ai编程·harmonyos
WindrunnerMax5 小时前
从零实现富文本编辑器#11-Immutable状态维护与增量渲染
前端·架构·前端框架
不想秃头的程序员5 小时前
Vue3 封装 Axios 实战:从基础到生产级,新手也能秒上手
前端·javascript·面试