当前位置: 首页 > news >正文

【Vue3】加载高德地图案例

官方API:展示地图-入门教程-地图 JS API 2.0 | 高德地图API  

1、获取高德Key

 参考:准备-地图 JS API 2.0 | 高德地图API

2、创建工程

npm create vite@latest

3、下载依赖集运行项目

npm install
npm i @amap/amap-jsapi-loader --save
npm run dev

4、编写核心代码

创建src\components\MapContainer.vue文件,内容如下:

<template><div id="container"></div>
</template>
<style  scoped>#container{/* padding:0px;margin: 0px; */width: 1500px;height: 600px;}
</style><script setup>
import { onMounted, onUnmounted } from "vue";
import AMapLoader from "@amap/amap-jsapi-loader";let map = null;onMounted(() => {window._AMapSecurityConfig = {securityJsCode: "a17b95de5d2d7043fda862cc670e7ae7",};AMapLoader.load({key: "a17b95de5d2d7043fda862cc670e7ae7", // 申请好的Web端开发者Key,首次调用 load 时必填version: "2.0", // 指定要加载的 JSAPI 的版本,缺省时默认为 1.4.15plugins: ["AMap.Scale"], //需要使用的的插件列表,如比例尺'AMap.Scale',支持添加多个如:['...','...']}).then((AMap) => {map = new AMap.Map("container", {// 设置地图容器idpitch: 50, //地图俯仰角度,有效范围 0 度- 83 度viewMode: "2D", //开启3D视图,默认为关闭 2D 3DrotateEnable: true, //是否开启地图旋转交互 鼠标右键 + 鼠标画圈移动 或 键盘Ctrl + 鼠标左键画圈移动pitchEnable: true, //是否开启地图倾斜交互 鼠标右键 + 鼠标上下移动或键盘Ctrl + 鼠标左键上下移动zoom: 13, //初始化地图层级rotation: -15, //初始地图顺时针旋转的角度zooms: [2, 20], //地图显示的缩放级别范围center: [116.333926, 39.997245], //初始地图中心经纬度});//创建一个 Marker 实例:const marker = new AMap.Marker({position: new AMap.LngLat(116.39, 39.9), //经纬度对象,也可以是经纬度构成的一维数组[116.39, 39.9]title: "北京",});//将创建的点标记添加到已有的地图实例:map.add(marker);marker.on("click", function (e) {alert("你点击了Marker");});}).catch((e) => {console.log(e);});
});
onUnmounted(() => {map?.destroy();
});
</script>

5、修改App代码

src\App.vue内容修改如下

<script setup>
import MapContainer from './components/MapContainer.vue';
</script><template><MapContainer></MapContainer>
</template><style scoped>
.logo {height: 6em;padding: 1.5em;will-change: filter;transition: filter 300ms;
}
.logo:hover {filter: drop-shadow(0 0 2em #646cffaa);
}
.logo.vue:hover {filter: drop-shadow(0 0 2em #42b883aa);
}
</style>

6、查看结果 

浏览器输入:http://localhost:5173/ 

http://www.dtcms.com/a/294702.html

相关文章:

  • LFU算法及优化
  • 电科金仓推出AI融合数据库,开启国产数据库新时代
  • Python 程序设计讲义(5):Python 的基本用法——数据的输入与输出
  • 【网络工程师软考版】网络互联设备、网络层协议IP和ICMP
  • Draw.io v28.0.6 中文绿色版:免费流程图制作工具
  • zabbix监控MySQL数据库
  • 如何让RAGFLow每次知识检索都是返回知识库中的所有文档?
  • HTTPS证书体系,证书加密流程(通信体系)
  • C/C++中的内存管理
  • 分布式事务中的2PC和 3PC
  • 无货源电商亚马逊采购指南:硬件隔离与支付风控实操
  • 多模态融合模型迎来新突破!
  • SAP-ABAP:SAP的MB_MIGO_BADI技术架构及增强详解
  • 代码随想录day23回溯算法2
  • 有关Kubernetes技术的学习
  • RDB和AOF的写回策略分别是什么?
  • 超表面设计参数复杂难优化?OAS光学软件专业方案来破局
  • 开源UI生态掘金:从Ant Design二次开发到行业专属组件的技术变现
  • Hexo - 免费搭建个人博客06 - 安装、切换主题Butterfly
  • C# 日期与时间 DateTime 结构和TimeSpan 结构
  • 网安-JWT
  • LLM 中的 温度怎么控制随机性的?
  • Hyperledger Fabric 中的安全性与隐私保护实现指南
  • uni-app动态获取屏幕边界到安全区域距离的完整教程
  • 【Node.js】使用ts-node运行ts文件时报错: TypeError: Unknown file extension “.ts“ for ts 文件
  • PBR策略路由
  • LeetCode二叉树的公共祖先
  • #Linux内存管理# 详细介绍使用mmap函数创立共享文件映射的工作原理
  • 篇四 tcp,udp客户端服务器编程模型
  • [Linux入门] Linux 文件系统与日志分析入门指南