高德地图搜索功能以及清除搜索结果maker
第一次写文章,写得不好各位看官见谅~
(pσ_σ)P
首先这是一个vue里面的项目,高德地图api是直接CDN进来的,所以使用了global来调用,默认已经初始化了一个地图,为了实现一个输入框搜索功能和将搜索的结果清除掉,直观表现就是将搜索出来的点清除掉,话不多说直接上代码
// AMap.Autocomplete是输入提示插件,详情参考https://lbs.amap.com/api/javascript-api/reference/search#m_AMap.Autocomplete
global.AMap.plugin('AMap.Autocomplete', () => {
let autoOptions = {
city: this.shopDatadetail.city,
input: 'addressInput' // 输入框ID
}
let autoComplete = new global.AMap.Autocomplete(autoOptions)
// select为输入框提示之后的选择事件,监听事件用法详情参考https://lbs.amap.com/api/javascript-api/reference/event/
global.AMap.event.addListener(autoComplete, 'select', e => {
this.chooseAddressSelect = e // e为回调函数返回的下拉框选择的参数
this.accuratePos = e.poi.name // accuratePos为输入框v-model绑定的值
global.AMap.service('AMap.PlaceSearch', () => {
let searchOptions = {
city: '全国',
map: this.map
}
let searchRes = new global.AMap.PlaceSearch(searchOptions)
// 搜索服务,详情参考https://lbs.amap.com/api/javascript-api/reference/search#m_AMap.PlaceSearch
searchRes.search(this.chooseAddressSelect.poi.name, () => {
// 其实这个地方是我最主要讲的,请往下看
searchRes.render.markerList.clear() // 这个为清除搜索结果的点,不想清除注释即可
console.log('搜索完成打印', searchRes) // searchRes为搜索的结果
})
})
})
})
接上,在高德地图的api中,搜索服务有一个clear方法,但是我使用了没有用,网上找了一下发现好像不是我一个人遇到了这个问题,但是也有相应的解决方法,即searchRes.render.markerList.clear(),我一开始是这样写的
let searchRes = new global.AMap.PlaceSearch(searchOptions)
searchRes.search(this.chooseAddressSelect.poi.name)
searchRes.render.markerList.clear()
但是没有用,我看其他人好像都是我这样使用的,然后去看一下文档发现search有一个回调函数就尝试在回调函数里面使用这个,结果成功了!至于为什么会这样子我也不知道为什么......有知道的大佬可以为我解答一波,踩坑较久,还是实力不行,顺便吐槽一下高德api,告辞!
PS:文中可能没有什么精华点,很多都是详情参考,一来我的确是实力可能还没有到能解答的地步,二是第一次写真的真的不知道怎么写,三是我建议多看文档才能发现一些解决的办法。
原文地址:https://segmentfault.com/a/1190000016905648
高德地图搜索功能以及清除搜索结果maker的更多相关文章
- CSS选择器实现搜索功能 驱动过滤搜索技术
一.CSS选择器可以用来实现搜索功能 CSS选择器可以用来实现搜索功能. 作者以前提过CSS3的选择器结合表单元素可以用来控制元素的显隐,这里,类似的,还是CSS3的选择器,用来过滤和搜索页面元素. ...
- Windows XP搜索功能 "包含文字" 搜索不到内容的解决办法
Windows开始菜单 -- 运行 -- regedit -- 确定,编辑注册表 HKEY_LOCAL_MACHINE\SYSTEM\ControlSet\Control\ContentIndex 右 ...
- 网页搜索功能 多表搜索sql
SELECT ID, Title, FromTableFROM (SELECT ID, ArticleName AS Title, 'Article' AS FromTable FROM ...
- 011.Adding Search to an ASP.NET Core MVC app --【给程序添加搜索功能】
Adding Search to an ASP.NET Core MVC app 给程序添加搜索功能 2017-3-7 7 分钟阅读时长 作者 本文内容 1.Adding Search by genr ...
- 原生javascript实现 下拉框搜索功能
由于业务需求,要实现 一个下拉框搜索功能.这个下拉功能和百度的还是有点区别的,百度的是时时与服务器交互的,而这个只是模拟.技术点在于实现 了搜索功能. 未搜索前如下图: 搜索后: <!DOCTY ...
- 如何使用 Lucene 做网站高亮搜索功能?
现在基本上所有网站都支持搜索功能,现在搜索的工具有很多,比如Solr.Elasticsearch,它们都是基于 Lucene 实现的,各有各的使用场景.Lucene 比较灵活,中小型项目中使用的比较多 ...
- 第三百六十九节,Python分布式爬虫打造搜索引擎Scrapy精讲—elasticsearch(搜索引擎)用Django实现搜索功能
第三百六十九节,Python分布式爬虫打造搜索引擎Scrapy精讲—elasticsearch(搜索引擎)用Django实现搜索功能 Django实现搜索功能 1.在Django配置搜索结果页的路由映 ...
- vue实现搜索功能
vue实现搜索功能 template 部分 <!-- 搜索页面 --> <template> <div> <div class="goback&qu ...
- 商城06——solr索引库搭建&solr搜索功能实现&图片显示问题解决
1. 课程计划 1.搜索工程的搭建 2.linux下solr服务的搭建 3.Solrj使用测试 4.把数据库中的数据导入索引库 5.搜索功能的实现 2. 搜索工程搭建 要实现搜索功能,需要搭建 ...
随机推荐
- UVa 11212 Editing a Book (IDA* && 状态空间搜索)
题意:你有一篇n(2≤n≤9)个自然段组成的文章,希望将它们排列成1,2,…,n.可以用Ctrl+X(剪切)和Ctrl+V(粘贴)快捷键来完成任务.每次可以剪切一段连续的自然段,粘贴时按照顺序粘贴.注 ...
- 【BZOJ2118】墨墨的等式(同余最短路)
题意: 思路:From https://www.cnblogs.com/GavinZheng/p/11709153.html#4421510 写的1e9,int范围的 #include<bits ...
- android系统时间格式转换工具类
代码依旧非常简单,只不过因为这个方法极为常用,因此体现的还是封装的思想. package com.ctbri.weather.utils; import java.text.SimpleDateFor ...
- Phaser3 场景Scene之间的传值 -- HTML网页游戏开发
一.首先当然得有至少有二个场景sceneA.js,sceneB.js 二.从场景A传值到场景B二种方法 1)通过事件this.events.emit('event key',{objKey:objVa ...
- java跨越请求实例
使用Access-Control-Allow-Origin解决跨域 什么是跨域 当两个域具有相同的协议(如http), 相同的端口(如80),相同的host(如www.google.com),那么我们 ...
- Ubuntu15下Qt+libusb开发
下载和安装libusb-1.0 在Ubuntu15中可以从软件仓库安装libusb,当前的libusb版本为1.0.可以使用如下命令安装libusb的全部内容. $sudo apt-get insta ...
- 电商企业如何做好EDM营销随感
对于中小型电商企业来说,运用EDM营销是一种非常不错的营销方式,正如我在电商EDM数据营销中的关键介绍一样.下面博主给大家介绍一下电商企业如何做好EDM营销. 一.在EDM邮件内容中跟客户建立信任的关 ...
- ES6数组的拓展
扩展运算符 扩展运算符(spread)是三个点(...).它好比 rest 参数的逆运算,将一个数组转为用逗号分隔的参数序列. console.log(...[1, 2, 3]) // 1 2 3 c ...
- Failed building wheel for netifaces
目录 文章目录 目录 问题 解决 问题 安装 OpenStackClient 的时候发现问题: Failed building wheel for netifaces Running setup.py ...
- 索尼A6300
1. 开机提示的NTSC NTSC和PAL,是两种不同视频录制标准,也就是说拍摄视频的时候才有用. a6300 1080P下,最大可以以 每秒 120p(ntsc下)或者 100p(pal下)录制.播 ...