vue使用高德地图搜索地址添加标记marker,定位,拖拽选址功能https://blog.csdn.net/SmartJunTao/article/details/123955679

实现效果:

需求:根据返回的经纬度 实现轨迹动画,以下示例可以直接复制使用,记得添加自己的key、秘钥。

JSAPI 的加载

JS API 2.0 版本提供了两种方案引入地图 JSAPI:

1. 使用官网提供的 JSAPI Loader 进行加载;

2. 以常规 JavaScript 脚本的方式加载;

注意:为避免地图数据协议和前端资源不匹配导致页面运行报错,只允许在线加载 JSAPI,禁止进行本地转存、与其它代码混合打包等用法。

使用 JSAPI Loader (推荐)

JSAPI Loader是我们提供的 API 加载器,可帮助开发者快速定位、有效避免加载引用地图 JSAPI 各种错误用法,具有以下特性:

支持以 普通JS 和 npm包 两种方式使用;
有效避免错误异步加载导致的 JSAPI 资源加载不完整问题;
对于加载混用多个版本 JSAPI 的错误用法给予报错处理;
对于不合法加载引用 JSAPI 给予报错处理;
支持指定 JSAPI 版本;
支持插件加载;
允许多次执行加载操作,网络资源不会重复请求,便于大型工程模块管理;
支持IE9以上的浏览器,不支持IE8以下
注意(您在2021年12月02日申请以后的key需要配合您的安全密钥一起使用)

JSAPI key和安全密钥的使用

JSAPI key搭配代理服务器并携带安全密钥转发(安全)

1) 引入 JSAPI 使用 Loader 之前增加代理服务器设置脚本标签,设置代理服务器域名或地址,将下面示例代码中的「您的代理服务器域名或地址」替换为您的代理服务器域名或ip地址,其中_AMapService为代理请求固定前缀,不可省略或修改。   (注意您这 个设置必须是在加载loader.js的脚本引入之前进行设置,否则设置无效。)

项目代码步骤:

1、在index.html页面body中添加秘钥

.......
<body><noscript><strong>We're sorry but map-demo doesn't work properly without JavaScript enabled. Please enable it to continue.</strong></noscript><div id="app"></div><script type="text/javascript">window._AMapSecurityConfig = {// serviceHost:'您的代理服务器域名或地址/_AMapService',  securityJsCode:"xxxxxx"//申请的秘钥}</script></body>
......

2、安装@amap/amap-jsapi-loader 使用

npm i @amap/amap-jsapi-loader --save

App.vue页面引入:

import AMapLoader from "@amap/amap-jsapi-loader";

3、代码实现:

<template><div class="positionBox"><div id="allmap"></div></div>
</template>
<script>
import AMapLoader from "@amap/amap-jsapi-loader";
export default {name: "app",data() {return {map: null,};},methods: {loadmap() {return new Promise((reslove, reject) => {AMapLoader.load({key: "xxxxxxxxxx", // 申请好的Web端开发者Key,首次调用 load 时必填// version: "2.0", // 指定要加载的 JSAPI 的版本,缺省时默认为 1.4.15plugins: ["AMap.ToolBar", "AMap.Scale", "AMap.Geocoder"], // 需要使用的的插件列表,如比例尺'AMap.Scale'等AMapUI: {// 是否加载 AMapUI,缺省不加载version: "1.1", // AMapUI 缺省 1.1plugins: [] // 需要加载的 AMapUI ui插件}}).then(AMap => {this.map = new AMap.Map("allmap", {resizeEnable: true,zoom: 10,// center: [116.397428, 39.90923] //中心点坐标});//地图控件this.map.addControl(new AMap.Scale());this.map.addControl(new AMap.ToolBar());this.map.setZoom(14); //设置缩放大小this.trajectory();reslove();}).catch(e => {console.log(e, "高德地图加载失败");reject(e);});});},// 轨迹trajectory() {AMapUI.load(["ui/misc/PathSimplifier", "lib/$"], (PathSimplifier,$) => {if (!PathSimplifier.supportCanvas) {alert("当前环境不支持 Canvas!");return;}let pathSimplifierIns = new PathSimplifier({zIndex: 100,//autoSetFitView:false,map: this.map, //所属的地图实例getPath: function(pathData, pathIndex) {return pathData.path;},getHoverTitle: function(pathData, pathIndex, pointIndex) {if (pointIndex >= 0) {//pointreturn (pathData.name +",点:" +pointIndex +"/" +pathData.path.length);}return pathData.name + ",点数量" + pathData.path.length;},renderOptions: {renderAllPointsIfNumberBelow: 100 //绘制路线节点,如不需要可设置为-1}});window.pathSimplifierIns = pathSimplifierIns;//设置数据pathSimplifierIns.setData([{name: "路线0",path: [[116.405289, 39.904987],[113.964458, 40.54664],[111.47836, 41.135964],[108.949297, 41.670904],[106.380111, 42.149509],[103.774185, 42.56996],[101.135432, 42.930601],[98.46826, 43.229964],[95.777529, 43.466798],[93.068486, 43.64009],[90.34669, 43.749086],[87.61792, 43.793308]]}]);//对第一条线路(即索引 0)创建一个巡航器let trajectory = pathSimplifierIns.createPathNavigator(0, {loop: true, //循环播放speed: 1000000 //巡航速度,单位千米/小时});trajectory.start();});}},mounted() {this.loadmap();}
};
</script>
<style scoped>
#allmap {width: 100%;height: 500px;
}
</style>

设置真实数据:

//设置数据pathSimplifierIns.setData([{name: "路线0",path: this.pathList//从后台获取的经纬度列表数据}
]);

vue使用高德地图搜索地址添加标记marker,定位,拖拽选址功能https://blog.csdn.net/SmartJunTao/article/details/123955679

vue使用高德地图aMap实现轨迹动画查询显示相关推荐

  1. vue是否可以做行车轨迹_在vue中高德地图引入和轨迹的绘制的实现

    高德地图引入和轨迹的绘制 1.第一步 vue中使用cdn引入高德地图,并在main.js中进行全局配置.(百度上有高德地图引入与配置方法,这里就不详细介绍): 1)npm install vue-am ...

  2. vue人员轨迹_在vue中高德地图引入和轨迹的绘制的实现

    高德地图引入和轨迹的绘制 1.第一步 vue中使用cdn引入高德地图,并在main.js中进行全局配置.(百度上有高德地图引入与配置方法,这里就不详细介绍): 1)npm install vue-am ...

  3. vue使用高德地图制作小车轨迹回放动画简单案例

    首先在根目录public中的index.html引入高德地图 <script type="text/javascript" src="https://webapi. ...

  4. vue使用高德地图小demo(标记点,画线,3D,叠加图片图层)

    vue使用高德地图小demo(标记点,画线,3D) 这个模式是3D的,可以看到地图是带有一定的倾角的. 注意:3D模式下,是不能够将进行画线的,不能使用PathSimplifier,改成2D可以正常使 ...

  5. VUE调用高德地图之电子围栏

    之前用VUE实现了高德地图的历史轨迹回放和热力图,现在来实现电子围栏功能. 所谓电子围栏,就是地图上限定的区域内实现限行功能,用我们身边的事物来举例,共享单车的限行.限停区域就是电子围栏.由此可见,电 ...

  6. vue使用高德地图原生API实现省份添加背景色,文字标注;实现点聚合和点标记点击之后出现信息窗体的功能

    功能描述:初始状态下,可以看到所有数据在地图上的分布的省份及相应的分布数量,点击点标注可以弹出对应的详细信息. 该例子使用了高德地图原生API去实现上述功能,效果图如下: 下面附上实现步骤: 1. v ...

  7. vue使用高德地图-进行显示地图和查询天气

    vue使用高德地图 高德地图显示,实现了天气查询效果(Vue) 在index.html中 引入高德地图的css和js vue 插件列表 问题解决: 高德地图显示,实现了天气查询效果(Vue) 在ind ...

  8. vue调用高德地图实现定位

    vue调用高德地图实现定位 第一步创建高德地图key 第二步:下载vue-amap npm install vue-amap --save 第三步:在项目main.js引入vue-amap impor ...

  9. 高德地图html js开发例子,vue.js高德地图实现热点图代码实例

    1.在index.html引入高德地图JSAPI 2.地图dom 3.js实现 export default { data() {}, methods:{ initMap(){ let map = n ...

最新文章

  1. 【JavaEE WEB 开发】Tomcat 详解 Servlet 入门
  2. free 内存 注意点的事
  3. php引用是什么,php引用是什么
  4. python函数(一)
  5. OpenCV:OpenCV4.0更新
  6. git clone加速(github加速)
  7. JAVA基础之列表(list)和字典(dict)
  8. 全局索引 前缀索引_面试系列 索引种类与优化
  9. (转)Linux查看CPU,硬盘,内存的大小
  10. tidyverse —— readxl包
  11. 算法知识点——(2)模型评估
  12. ORL 人脸库 BP神经网络人脸识别
  13. 老码农的2019这一年——
  14. Python黑帽子--黑客与渗透测试编程之道
  15. unity3D埃及探险游戏源码,支持安卓+IOS双端 unity2019 C#语言开发
  16. 2012文件服务器 读写日志,管理用户访问日志记录记录
  17. PHP 全局变量 - 超全局变量
  18. fast角点检测 java_米联客 ZYNQ/SOC 精品教程 S04-CH11 快速角点检测之硬件实现
  19. hadoop组件---数据仓库(四)---hive常用命令
  20. elasticsearch 关键词查询-实现like查询

热门文章

  1. 光纤中的多种光学模式芯径_单模光纤和多模光纤的区别特点?选择哪个好?
  2. windows下使用route添加路由
  3. LSF_安装(UNIX or Linux)
  4. 支持大S,你一定要幸福!
  5. 删除mysql多个实例_多实例数据库删除实例
  6. Datawhale零基础入门数据挖掘-Task5模型融合
  7. 为Metabase Pulses添加slack代理支持
  8. 台州农商行计算机专业能力测试,银行/农商行笔试!刷题要刷到点子上,来这里专业老师给你出题...
  9. 2020 web前端面试题及答案大全
  10. 小米设备跨版本降级后相机打不开陀螺仪无法工作解决办法