vue高德地图之玩转周边
发布时间 - 2026-01-11 01:54:51 点击率:次前言:在之前的博客中,有成功引入高德地图,这是以前的地址 vue 调用高德地图。

因为一些需求,需要使用到地图的周边功能。
完整的项目代码请查看 我的github
一 、先看要实现的结果,参考了链家的周边,如图所示。
二 、原理分析
1、引入高德api,这个在之前的博客提到过,vue 调用高德地图。
2、使用地图的周边插件,这是 高德网站的api。
AMap.PlaceSearch //地点搜索服务插件,提供某一特定地区的位置查询服务
在插件中的各种方法中选取了searchNearBy的方法。
searchNearBy(keyword:String,center:LngLat,radius:Number, callback:function(status:String,result:info/SearchResult)) // 根据中心点经纬度、半径以及关键字进行周边查询 radius取值范围:0-50000
3、构建查询方法
searchData: function (callback) {
let keyWords = ['地铁线路', '大型购物广场', '三甲医院', '学校'] // 自选关键词
let distance = [1000, 3000, 3000, 3000]
// …………………………………………………………周边分类…………………………………………………………………………………………………………
placeSearchOptions = { // 构造地点查询类
pageSize: 10,
pageIndex: 1,
city: '021', // 城市
map: map,
visible: false
}
AMap.service('AMap.PlaceSearch', function () {
map.clearMap() // 清除地图覆盖物
placeSearch = new AMap.PlaceSearch(placeSearchOptions)
for (let i = 0; i < keyWords.length; i++) {
placeSearch.searchNearBy(keyWords[i], [121.44343879031237, 31.207570983863118], distance[i], callback)
}
})
return callback
},
在这个方法中,将所有的maker都查找出来,为了能够让后续不重新加载地图和插件,如有更好的方法 ,欢迎指出。
4、将maker的切换事件绑定在footer下的各个选项中。
/* 注册每项的点击事件,默认显示num0,也就是交通,实际上所有的数据已经请求到了,点击按钮只是用来切换maker */
clickItem: function (index, buttons) {
map.clearMap() // 清除地图覆盖物
buttons.forEach(function (e, index) {
e.isActive = false
})
buttons[index].isActive = true
self.listCount = self.num[index].length
self.listText = self.num[index]
function onClick (e) {
console.log(e)
}
for (let i = 0; i < self.num[index].length; i++) {
marker = new AMap.Marker({
// content: 'div',
title: 'abc',
icon: 'https://webapi.amap.com/theme/v1.3/markers/n/mark_b' + (i + 1) + '.png',
position: [self.num[index][i].location.lng, self.num[index][i].location.lat],
offset: new AMap.Pixel(-24, 5),
zIndex: 1,
map: map,
clickable: true
})
AMap.event.addListener(marker, 'click', onClick)
}
return marker
}
三、结果展示
注意:为方便演示效果,此项目中使用了个人开发者的高德秘钥,请自行去替换成自己的。
完整的项目代码请查看 我的github
以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持。
# vue
# 高德地图
# 地图
# vue调用高德地图实例代码
# 在vue项目中引入高德地图及其UI组件的方法
# 在vue中高德地图引入和轨迹的绘制的实现
# vue使用高德地图根据坐标定位点的实现代码
# 前端vue如何使用高德地图
# vue-cli中使用高德地图的方法示例
# VUE项目调用高德地图的详细步骤
# Vue接入高德地图的完整实例
# 关键词
# 这是
# 请查看
# 自己的
# 在这个
# 中心点
# 如有
# 博客
# 绑定
# 先看
# 大家多多
# 三甲
# 每项
# 如图所示
# 都查
# 购物广场
# 替换成
# 加载
# 使用了
# 链家
相关栏目:
【
网站优化151355 】
【
网络推广146373 】
【
网络技术251813 】
【
AI营销90571 】
相关推荐:
打开php文件提示内存不足_怎么调整php内存限制【解决方案】
小米17系列还有一款新机?主打6.9英寸大直屏和旗舰级影像
免费视频制作网站,更新又快又好的免费电影网站?
Laravel怎么实现观察者模式Observer_Laravel模型事件监听与解耦开发【指南】
高端建站如何打造兼具美学与转化的品牌官网?
如何快速辨别茅台真假?关键步骤解析
Laravel如何安装Breeze扩展包_Laravel用户注册登录功能快速实现【流程】
Laravel路由怎么定义_Laravel核心路由系统完全入门指南
Android GridView 滑动条设置一直显示状态(推荐)
香港服务器选型指南:免备案配置与高效建站方案解析
做企业网站制作流程,企业网站制作基本流程有哪些?
公司网站制作价格怎么算,公司办个官网需要多少钱?
C#如何调用原生C++ COM对象详解
Laravel如何创建自定义Facades?(详细步骤)
CSS3怎么给轮播图加过渡动画_transition加transform实现【技巧】
如何在宝塔面板中创建新站点?
如何制作公司的网站链接,公司想做一个网站,一般需要花多少钱?
浅述节点的创建及常见功能的实现
如何在万网利用已有域名快速建站?
Laravel安装步骤详细教程_Laravel环境搭建指南
香港服务器租用每月最低只需15元?
网站页面设计需要考虑到这些问题
Laravel Seeder怎么填充数据_Laravel数据库填充器的使用方法与技巧
Laravel如何记录日志_Laravel Logging系统配置与自定义日志通道
Laravel怎么集成Log日志记录_Laravel单文件与每日日志配置及自定义通道【详解】
如何用VPS主机快速搭建个人网站?
详解Huffman编码算法之Java实现
Laravel如何升级到最新版本?(升级指南和步骤)
网站建设整体流程解析,建站其实很容易!
Windows10电脑怎么查看硬盘通电时间_Win10使用工具检测磁盘健康
Laravel如何集成Inertia.js与Vue/React?(安装配置)
使用C语言编写圣诞表白程序
Laravel如何实现API速率限制?(Rate Limiting教程)
制作ppt免费网站有哪些,有哪些比较好的ppt模板下载网站?
免费网站制作appp,免费制作app哪个平台好?
jquery插件bootstrapValidator表单验证详解
如何登录建站主机?访问步骤全解析
如何基于PHP生成高效IDC网络公司建站源码?
PHP怎么接收前端传的文件路径_处理文件路径参数接收方法【汇总】
网站视频制作书签怎么做,ie浏览器怎么将网站固定在书签工具栏?
php8.4header发送头信息失败怎么办_php8.4header函数问题解决【解答】
Laravel如何使用Sanctum进行API认证?(SPA实战)
如何在宝塔面板创建新站点?
Linux虚拟化技术教程_KVMQEMU虚拟机安装与调优
Laravel如何使用API Resources格式化JSON响应_Laravel数据资源封装与格式化输出
如何快速生成高效建站系统源代码?
详解jQuery中基本的动画方法
图片制作网站免费软件,有没有免费的网站或软件可以将图片批量转为A4大小的pdf?
Win11应用商店下载慢怎么办 Win11更改DNS提速下载【修复】
PHP的CURL方法curl_setopt()函数案例介绍(抓取网页,POST数据)

