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

vue3中引入百度地图

话不多说直接开干

1.第一种方式

百度地图地址 打开
https://lbsyun.baidu.com/index.php?title=%E9%A6%96%E9%A1%B5

然后点进去地图

在这里插入图片描述

然后再这个功能里面选择一个地图,然后跳转页面 然后一直下滑 滑到底部 点击这个

在这里插入图片描述

跳转到这个页面 然后点击进入demo这个

在这里插入图片描述

然后到这个demo的实例的页面 然后我们选择旁边的html的结构 然后复制一下

在这里插入图片描述

然后我们把html文件粘贴到 我们下图的这个vue3脚手架中的index.html中

在这里插入图片描述

然后我们需要替换一下我们复制的ak 就是我们应用的ak 我们现在百度首页官网中找到我们的控制台

在这里插入图片描述
在这里插入图片描述

如果没有ak的话 去创建一个应用 然后选择我们的浏览器端 然后使用ak

html结构

html 这里替换成我们刚刚注册拿到的ak 然后运行项目就可以正常显示地图了 然后我们可以在这个js中加入我们想要的一个地图的效果
在这里插入图片描述

如果没有ak的话显示报错

在这里插入图片描述

第一种是非常方便的 ,直接粘贴在我们vue的项目中的index.htlm文件中即可 ,但是问题呢
我们的vue项目中的所有的页面展示的都是这个地图
那么我们想要这个地图 在我们页面中的一个区域进行展示和其他操作 那么看第二种方法

第二种

我们准备一个vue页面
然后html结构的元素

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

然后我们的js的逻辑部分

<script setup>// 初始化script
function loadJScript() {const script = document.createElement('script');script.type = 'text/javascript';script.src = 'https://api.map.baidu.com/getscript?v=3.0&ak=你的ak&services=&t=20230808155339';script.onload = () => {init()}document.body.appendChild(script);
}
// 初始化地图
function init(position = new BMap.Point(116.403963,39.915119)) {const map = new window.BMap.Map('container'); // 创建Map实例const point = position; // 创建点坐标const points = [new BMap.Point(116.402867,39.915541),new BMap.Point(116.404807,39.915562),new BMap.Point(116.404803,39.914864),new BMap.Point(116.403882,39.91457),new BMap.Point(116.402768,39.914701),];const polygonOptions = {strokeColor: "red", // 边界线颜色strokeWeight: 1,    // 边界线宽度strokeOpacity: 0.8, // 边界线透明度fillColor: "blue",  // 填充颜色fillOpacity: 0.4    // 填充透明度};const poly = new BMap.Polygon(points, polygonOptions)// 折线添加到地图中map.addOverlay(poly)map.centerAndZoom(point, 20);var marker = new BMap.Marker(point);map.addOverlay(marker);map.enableScrollWheelZoom(); // 启用滚轮放大缩小}window.onload = loadJScript(); // 异步加载地图</script>

后言

创作不易 如果这篇文章有对你带来帮助的话 那么三连支持一下 感谢观看

http://www.lryc.cn/news/145737.html

相关文章:

  • 【Linux-Day8- 进程替换和信号】
  • 日志文件之间关系和介绍及应用
  • mac电脑屏幕录制Berrycast Mac屏幕录制软件
  • 机器学习笔记之最优化理论与方法(一)最优化问题概述
  • 【ES5新特性一】 严格模式语法变化、全局的JSON对象、编码和解码的方法
  • Java【手撕滑动窗口】LeetCode 3. “无重复字符的最长子串“, 图文详解思路分析 + 代码
  • 学习哈哈哈哈
  • 05-基础例程5
  • 双基证券:预计未来还会有更多政策来吸引增量资金
  • 前端:html实现页面切换、顶部标签栏,类似于浏览器的顶部标签栏(完整版)
  • 强化自主可控,润开鸿发布基于RISC-V架构的开源鸿蒙终端新品
  • 软件设计师知识点·1
  • 修改Jupyter Notebook默认打开路径
  • 经典卷积网络
  • react+koa+vite前后端模拟jwt鉴权过程
  • VK1616是LED显示控制驱动电路/LED驱动IC、数显驱动芯片、数码管驱动芯片
  • 开箱报告,Simulink Toolbox库模块使用指南(五)——S-Fuction模块(C MEX S-Function)
  • 摄像头的调用和视频识别
  • 多通道分离与合并
  • JOJO的奇妙冒险
  • LeetCode56.合并区间
  • 【内推码:NTAMW6c】 MAXIEYE智驾科技2024校招启动啦
  • Python框架【模板继承 、继承模板实战、类视图 、类视图的好处 、类视图使用场景、基于调度方法的类视图】(四)
  • 对于前端模块化的理解与总结(很全乎)
  • NewStarCTF 2022 web方向题解 wp
  • WebGL矩阵变换库
  • block层:8. deadline调度器
  • DTO,VO,PO的意义与他们之间的转换
  • Java 集合框架2
  • 2024王道408数据结构P144 T16