Vue项目中引入地图的详细教程

第一步:在项目中安装地图插件
复制代码
npm i @amap/amap-jsapi-loader --save  
第二步:创建一个容器 添加id属性 (因为地图必须使用id 不能使用class)
复制代码
 <div id="maps"></div>
第三步:给这个容器设置宽高
复制代码
#maps {
  width: 100%;
  height: calc(100vh - 400px);
}
第四步:在你写的页面引入高德地图
复制代码
import AMapLoader from "@amap/amap-jsapi-loader";
第五步:加载地图
复制代码
复制代码
   AMapLoader.load({
     key: "你的key值",
     version: "2.0",
   })
     .then((AMap) => {
       // 调用地图渲染函数
       renderMap(AMap);
     })
     .catch((e) => {
       console.error(e); //加载错误提示
     });
第六步:创建地图渲染函数,之后地图的内容都需要写在这个函数中
复制代码
   const renderMap = (AMap) => {
     const map = new AMap.Map("maps");
   };
第七步:设置地图的中心点和级别
复制代码
   const renderMap = (AMap) => {
     const map = new AMap.Map("maps", {
       zoom: 12,
       center: [113.978255, 35.281454],
       showIndoorMap: false,
     });
   };
第八步:设置点标记到地图里
复制代码
     let Marker = new AMap.Marker({
       position: new AMap.LngLat(113.978255, 35.281454),
       icon: "https://pic.imgdb.cn/item/652a9187c458853aefe93f88.png",
       offset: new AMap.Pixel(-13, -30),
     });
    
     map.add(Marker);
最后一步:标记点点击事件 在事件中设置信息弹窗
复制代码
    Marker.on("click", () => {
       let infoWindow = new AMap.InfoWindow({
         content: `
           <div style="padding:10px;width:200px;">
               <h2 style="font-size:16px;line-height:30px;">中国建设银行</h2>
               <span style="font-size:14px;line-height:20px;">电话:136****5865</span>
               <p style="font-size:15px;">地址:河南省新乡市红旗区XXX 中国建设银行</p>
           </div>
         `,
         offset: new AMap.Pixel(3, -25),
       });
    
       infoWindow.open(map, [113.978255, 35.281454]);
     });
相关推荐
永远是我的最爱1 分钟前
基于.NET的小小便利店前台收银系统
前端·sqlserver·.net·visual studio
从文处安2 分钟前
「九九八十一难」第一难:前端数据mock指南(TS + VUE)
前端
Zhencode21 分钟前
Vue3 响应式依赖收集与更新之effect
前端·vue.js
x-cmd26 分钟前
[x-cmd] jsoup 1.22.1 版本发布,引入 re2j 引擎,让 HTML 解析更安全高效
前端·安全·html·x-cmd·jsoup
天下代码客43 分钟前
使用electronc框架调用dll动态链接库流程和避坑
前端·javascript·vue.js·electron·node.js
weixin199701080161 小时前
【性能提升300%】仿1688首页的Webpack优化全记录
前端·webpack·node.js
冰暮流星1 小时前
javascript之数组
java·前端·javascript
晚霞的不甘2 小时前
Flutter for OpenHarmony天气卡片应用:用枚举与动画打造沉浸式多城市天气浏览体验
前端·flutter·云原生·前端框架
weixin79893765432...2 小时前
Vue 渲染体系“三件套”(template 模板语法、h 函数和 JSX 语法)
vue.js·h函数·template 模板·jsx 语法
xkxnq2 小时前
第五阶段:Vue3核心深度深挖(第74天)(Vue3计算属性进阶)
前端·javascript·vue.js