vue3+vue-baidu-map-3x 实现地图定位

文档地址:一个是2一个是3

https://dafrok.github.io/vue-baidu-map/#/zh/index

vue-baidu-map-3x

1.首先要到百度地图开放平台上建一个账号,如果有百度账号可以直接登录百度地图-百万开发者首选的地图服务商,提供专属的行业解决方案

2.点击控制台,完善信息

3.信息完善之后,打开的是这个页面(我这里完善的信息选择的是个人)

4.然后点击应用管理下的我的应用,此时打开的页面如果已有应用可以直接用那个ak值,如果没有请点击创建应用,根据自己的需要进行选择生成,第三张图片上的白名单,如果本地跑的话可以直接输入*,但要注意上线之后改掉,创建好后就有一个ak啦,一会在代码里把这个ak粘进去就可以啦

5,程序:我这里用了两个功能,一个是定位,一个是搜索

先安装

pnpm install vue-baidu-map-3x --save

html

<!-- 百度地图 --><baidu-mapclass="map"ak="L3on1qvFT4RG1weFYRIxGbG8WOXpqzAi"v="3.0"type="API":zoom="15":center="centerVal"><!-- 定位 --><bm-geolocationanchor="BMAP_ANCHOR_BOTTOM_RIGHT":show-address-bar="true":auto-location="true"@locationSuccess="successFn"@locationError="errorFn"/><!-- 自定义组件 --><bm-control><a-input-searchv-model:value="addressSear"placeholder="请输入地点"enter-button="搜索"size="large"@search="onSearch"/></bm-control></baidu-map>

script

<script lang="ts">import { defineComponent, ref } from 'vue';import { BaiduMap, BmGeolocation, BmControl } from 'vue-baidu-map-3x';export default defineComponent({name: 'a',components: { BaiduMap, BmGeolocation, BmControl },emits: ['success'],setup(props, { emit }) {//搜索框内容const addressSear = ref('');// 百度地图默认定位const centerVal = ref('北京');// 定位存储的位置const positonStr = ref('');// 搜索框-赋值,让地图跟着变化const onSearch = () => {centerVal.value = addressSear.value;};// 定位失败const errorFn = () => {alert('定位失败');};// 定位成功const successFn = (e: any) => {// 定位赋值positonStr.value =e.addressComponent.province +e.addressComponent.city +e.addressComponent.district +e.addressComponent.street +e.addressComponent.streetNumber;};return { errorFn, successFn, addressSear, centerVal, onSearch };},});

完整程序

<template><........><!-- 百度地图 --><baidu-mapclass="map"ak="L3on1qvFT4RG1weFYRIxGbG8WOXpqzAi"v="3.0"type="API":zoom="15":center="centerVal"><!-- 定位 --><bm-geolocationanchor="BMAP_ANCHOR_BOTTOM_RIGHT":show-address-bar="true":auto-location="true"@locationSuccess="successFn"@locationError="errorFn"/><!-- 自定义组件 --><bm-control><a-input-searchv-model:value="addressSear"placeholder="请输入地点"enter-button="搜索"size="large"@search="onSearch"/></bm-control></baidu-map></.............>
</template>
<script lang="ts">import { defineComponent, ref } from 'vue';import { BaiduMap, BmGeolocation, BmControl } from 'vue-baidu-map-3x';export default defineComponent({name: '.........',components: { BaiduMap, BmGeolocation, BmControl },emits: ['success'],setup(props, { emit }) {.................//搜索绑定变量const addressSear = ref('');//定位, 可使用如“广州市海珠区”的地区字符串,也可以使用对象如 {lng: 116.404, lat: 39.915} 表示经纬度const centerVal = ref('北京');// 定位按钮的当前位置const positonStr = ref('');// 弹窗保存async function handleSubmit() {if (!positonStr.value) {positonStr.value = centerVal.value;}emit('success', positonStr.value);........}// 搜索框const onSearch = () => {centerVal.value = addressSear.value;};// 定位失败const errorFn = () => {alert('定位失败');};// 定位成功const successFn = (e: any) => {// 定位赋值positonStr.value =e.addressComponent.province +e.addressComponent.city +e.addressComponent.district +e.addressComponent.street +e.addressComponent.streetNumber;};return {  handleSubmit, errorFn, successFn, addressSear, centerVal, onSearch };},});
</script>
<style scoped>.map {width: 100%;height: 300px;}
</style>

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/pingmian/57618.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

ThreadLocal内存泄漏面试题

一、ThreadLocal内部结构 首先更好的说明ThreadLocal内存泄露的场景&#xff0c;以及具体的原因&#xff0c;先来了解下ThreadLocal的内部结构&#xff0c;如图1所示。 可以看到&#xff0c;ThreadLocal对象是存储在每个Thread线程内部的ThreadLocalMap中的&#xff0c;并且在…

行列式-常山赵子龙

终于知道这类题怎么写了 两个条件都要用到 要计算&#xff0c;减少直觉

【加密系统】华企盾DSC服务台提示:请升级服务器,否则可能导致客户端退回到旧服务器的版本

华企盾DSC服务台提示&#xff1a;请升级服务器&#xff0c;否则可能导致客户端退回到旧服务器的版本 产生的原因&#xff1a;控制台版本比服务器高导致控制台出现报错 解决方案 方法&#xff1a;将控制台回退到原来的使用版本&#xff0c;在控制台负载均衡查看连接该服务器各个…

图像分割-DeepLab

DeepLabV3源码链接&#xff1a;https://github.com/bubbliiiing/deeplabv3-plus-pytorch&#xff08;打不开私信我获取&#xff09; 一、简介 一般的模型如Unet一般用于医学领域&#xff0c;小目标&#xff0c;如细胞分割。 为了增大感受野&#xff08;从而更好的获得全局特征…

LeetCode 18.四数之和

LeetCode 18.四数之和 C 思路&#x1f9d0;&#xff1a; 由题意得&#xff0c;四个数组里面的整数相加需要得到target这个目标值&#xff0c;且结果不能重复&#xff0c;那么我们可以用排序双指针的方式进行解答&#xff0c;将该数组变为升序数组&#xff0c;然后固定左边两个数…

建站工具Halo

建站工具Halo 项目及文档快速体验启动成功 类似wordpress的建站工具&#xff0c;使用java技术栈Springboot开发&#xff0c;对java开发者友好。 项目及文档 https://github.com/halo-dev/halo 快速体验 为了快速体验&#xff0c;直接使用docker compose部署。也可在源码基础…

人工智能+医学

医学影响的内型&#xff1a;(X光片、计算机断层扫描、磁共振成像、超声波&#xff09; ITK snap医学图像读取 医学影像领域常见任务: 图像分类、语义分割、疾病预测、目标检测、图像配准、图像生成(应用少)、图像增强、生成放射学报告。 需要有很强的可解释…

指针进阶(三)(C 语言)

目录 一、回调函数二、快速排序函数 qsort1. qsort() 函数原型2. 使用 qsort() 函数 三、仿照 qsort 函数设计一个可以排序任意类型数组的冒泡函数1. 函数原型2. 函数设计思路 一、回调函数 在 C 语言中&#xff0c;回调函数是一种通过函数指针调用的函数&#xff0c;也就是一…

Spring Boot驱动的植物健康监测革命

1系统概述 1.1 研究背景 随着计算机技术的发展以及计算机网络的逐渐普及&#xff0c;互联网成为人们查找信息的重要场所&#xff0c;二十一世纪是信息的时代&#xff0c;所以信息的管理显得特别重要。因此&#xff0c;使用计算机来管理植物健康系统的相关信息成为必然。开发合适…

软件测试学习笔记丨Selenium学习笔记:常用页面信息对比方法expected_conditions

本文转自测试人社区&#xff0c;原文链接&#xff1a;https://ceshiren.com/t/topic/22514 本文为霍格沃兹测试开发学社的学习经历分享&#xff0c;写出来分享给大家&#xff0c;希望有志同道合的小伙伴可以一起交流技术&#xff0c;一起进步~ 说明&#xff1a;本篇博客基于sel…

开拓鸿蒙测试新境界,龙测科技引领自动化测试未来

在当今科技舞台上&#xff0c;鸿蒙 OS 以非凡先进性强势登场&#xff0c;打破传统操作系统格局&#xff0c;为软件测试领域带来全新机遇与艰巨挑战。 一、鸿蒙 OS 的辉煌崛起 &#xff08;一&#xff09;壮丽发展历程与卓越市场地位 鸿蒙 OS 的发展如波澜壮阔的史诗。2023 年…

JavaScript进阶:手写代码挑战(一)

​&#x1f308;个人主页&#xff1a;前端青山 &#x1f525;系列专栏&#xff1a;JavaScript篇 &#x1f516;人终将被年少不可得之物困其一生 依旧青山,本期给大家带来JavaScript篇专栏内容:JavaScript手写代码篇 #1024程序员节&#xff5c;征文# 在现代Web开发中&#xff0c…

中国移动机器人将投入养老场景;华为与APUS共筑AI医疗多场景应用

AgeTech News 一周行业大事件 华为与APUS合作&#xff0c;共筑AI医疗多场景应用 中国移动展出人形机器人&#xff0c;预计投入养老等场景 作为科技与奥富能签约&#xff0c;共拓智能适老化改造领域 天与养老与香港科技园&#xff0c;共探智慧养老新模式 中山大学合作中国…

[Python学习日记-53] Python 中的正则表达式模块 —— re

[Python学习日记-53] Python 中的正则表达式模块 —— re 简介 re 模块 练习 简介 我们在编程的时候经常会遇到想在一段文字当中找出电话号码、身份证号、身高、年龄之类的信息&#xff0c;就像下面的数据一样 # 文件名&#xff1a;美丽学姐联系方式.txt 姓名 地区 …

微信小程序美团点餐

引言&#xff1a;外卖已经成为了都市人的必备&#xff0c;在无数个来不及&#xff08;懒得&#xff09;做饭的时刻拯救孤单寂寞的胃。美团外卖无疑是外卖届的领头羊&#xff0c;它的很多功能与设计都值得我们学习。本文将从五个方面&#xff0c;对美团外卖展开产品分析&#xf…

【ArcGIS Pro实操第4期】绘制三维地图

【ArcGIS Pro实操第4期】绘制三维地图 ArcGIS Pro绘制三维地图-以DEM高程为例参考 如何使用ArcGIS Pro将栅格数据用三维的形式进行表达&#xff1f;在ArcGIS里可以使用ArcScene来实现&#xff0c;ArcGIS Pro实现原理跟ArcScene一致。由于Esri未来将不再对ArcGIS更新&#xff0c…

深入浅出神经网络:从基础原理到高级应用

第5章 神经网络 更加详细内容可以看这篇文章 5.1 神经元模型 神经网络的基本单元是神经元模型。神经元模拟了生物神经元的行为&#xff0c;通过接收输入信号&#xff0c;进行加权求和&#xff0c;然后经过激活函数输出结果。 数学上&#xff0c;一个简单的神经元可以表示为&…

pipeline开发笔记

pipeline开发笔记 jenkins常用插件Build Authorization Token Root配置GitLab的webhooks(钩子)配置构建触发器--示例 piblish over sshBlue OceanWorkspace Cleanup PluginGit插件PipelineLocalization: Chinese (Simplified) --中文显示Build Environment Plugin 显示构建过程…

ArcGIS 10.8 安装教程

目录 一、ArcGIS10.8二、安装链接三、安装教程四、ArcGIS实战 &#xff08;一&#xff09;ArcGIS10.8 1. 概述 ArcGIS 10.8是由美国Esri公司开发的GIS平台&#xff0c;用于处理、分析、显示和管理地理数据&#xff0c;并实现数据共享。它具有新特性和功能&#xff0c;性能更…

iOS MPNowPlayingInfoCenter 通知栏、锁屏 显示当前播放的媒体信息

前言 MPNowPlayingInfoCenter 是 iOS 框架 MediaPlayer 中的一个类&#xff0c;主要用于管理锁屏界面、控制中心、通知中心中显示的“当前播放”媒体信息。它允许开发者向用户展示正在播放的音乐或媒体信息&#xff0c;并控制媒体播放。 通过 MPNowPlayingInfoCenter&#xf…