高德地图系列(三):vue项目利用高德地图实现地址搜索功能

目录

第一章 效果图

第二章 源代码

第一章 效果图

  • 高德地图为我们提供了搜索联想,以及搜索结果标记,该案例已将基础功能打通,后续我们肯定还会对功能有所修改,想实现自己想要的效果,基本上看高德地图文档对着改就好了(跟我们用别的工具一样做即可) 

第二章 源代码

  • 代码描述如下:
<template><div>// 用了蚂蚁金服组件<a-input id='tipinput' type="text"></a-input>// 地图容器<div id="container" ref="amap"></div>// 该容器是搜索结果容器,分页,但是需要配置<div id="panel"></div></div>
</template><script>
import AMapLoader from '@amap/amap-jsapi-loader'
export default {data() {return {map: null,placeSearch: null,mapModule: null // AMap}},mounted() {window._AMapSecurityConfig = {securityJsCode: 'key密钥' // 申请key对应的秘钥 -> 注意了,如果不搭配密钥使用,搜索将没有结果}// 初始化地图this.initAMap()},destroyed() {// 销毁地图this.map.destroy()},methods: {// 初始化地图函数initAMap() {const _this = thisAMapLoader.load({key: '申请的key', // 申请好的Web端开发者Key,首次调用 load 时必填version: '2.0', // 指定要加载的 JSAPI 的版本,缺省时默认为 1.4.15plugins: []}).then((AMap) => {// 保存AMap实例_this.mapModule = AMapconst map = new AMap.Map('container', {// 设置地图容器idviewMode: '3D', // 默认2d地图模式zoom: 12, // 初始化地图级别zooms: [5, 30],// 可以设置初始化当前位置center: [116.397428, 39.90923],resizeEnable: true})// 添加控件AMap.plugin(['AMap.ElasticMarker','AMap.Scale','AMap.ToolBar','AMap.HawkEye','AMap.MapType','AMap.Geolocation','AMap.AutoComplete','AMap.PlaceSearch'],() => {map.addControl(new AMap.ElasticMarker())map.addControl(new AMap.Scale())map.addControl(new AMap.ToolBar())map.addControl(new AMap.HawkEye())map.addControl(new AMap.MapType())map.addControl(new AMap.Geolocation())})_this.map = map// 搜索功能_this.toSearch()}).catch((e) => {console.log(e)})},toSearch() {const _this = this// 实例化AutoCompleteconst autoOptions = {// input 为绑定输入提示功能的input的DOM ID,注意这个id要个搜索输入框的id一致input: 'tipinput' }const autoComplete = new _this.mapModule.AutoComplete(autoOptions)autoComplete.on('select', _this.select)// 注册监听,当选中某条记录时会触发},select(e) {const _this = this// 无需再手动执行search方法,autoComplete会根据传入input对应的DOM动态触发search// { map: _this.map } ==> 这个对象是能配置的 --> 根据官方文档配置即可,需要什么配置什么const placeSearch = new _this.mapModule.PlaceSearch({map: _this.map})placeSearch.setCity(e.poi.adcode)placeSearch.search(e.poi.name) // 关键字查询查询}
}
</script>
<style lang='less' scoped>
#container {padding: 0px;margin: 0px;width: 100%;height: 900px;
}
</style>
  •  注意事项:
  1. 需要搭配申请key和的密钥key一起使用
  2. 地图2.0使用的是AMap.AutoComplete记得区分1.x的Autocomplete
  3. 高德地图组件已经能实现搜索事件了,只需要输入框id对应填好即可
  4. 搜索功能还有许多功能,我们可以根据给的典例了解参数(小编认为上面的解释比接口文档更详细),实例文档如下:
  5. 接口文档如下:

 示例文档:获取搜索数据-POI搜索-示例中心-JS API 2.0 示例 | 高德地图API

 

接口文档:参考手册-地图 JS API 2.0 | 高德地图API 

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

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

相关文章

【深度学习实验】网络优化与正则化(七):超参数优化方法——网格搜索、随机搜索、贝叶斯优化、动态资源分配、神经架构搜索

文章目录 一、实验介绍二、实验环境1. 配置虚拟环境2. 库版本介绍 三、优化算法0. 导入必要的库1. 随机梯度下降SGD算法a. PyTorch中的SGD优化器b. 使用SGD优化器的前馈神经网络 2.随机梯度下降的改进方法a. 学习率调整b. 梯度估计修正 3. 梯度估计修正&#xff1a;动量法Momen…

Es 拼音搜索无法高亮

目录 背景&#xff1a; Es 版本&#xff1a; 第一步 第二步 &#xff08;错误步骤 - 只是记录过程&#xff09; 第三步 第四步 第五步 第六步 第七步 背景&#xff1a; app 原有的搜索功能无法进行拼音搜索&#xff0c;产品希望可以支持&#xff0c;例如内容中含有&a…

IDEA插件下载到本地

IDEA插件下载到本地 官网下载【点击跳转】

Vue路由 replace属性 控制浏览记录不能前进或后退

默认是push模式 表示页面一直增加&#xff0c;用户可以操作返回上一个页面 replace 模式 <router-link replace :to"{path:/user,query:{ id:123,age:666 }} ">跳转用户</router-link><!--replace true表示浏览器不能后退浏览记录-->

Netty传输object并解决粘包拆包问题

⭐️ 前言 大家好&#xff0c;笔者之前写过一篇文章&#xff0c;《Netty中粘包拆包问题解决探讨》&#xff0c;就Netty粘包拆包问题及其解决方案进行了探讨&#xff0c;本文算是这篇博客的延续。探讨netty传输object的问题。 本文将netty结合java序列化来传输object并解决粘包…

el-table中el-popover失效问题

场景&#xff1a;先有一个数据表格&#xff0c;右侧操作栏为固定列&#xff0c;另外有一个字段使用了el-popover来点击弹出框来修改值&#xff0c;发现不好用&#xff0c;点击后无法显示弹出框&#xff0c;但当没有操作栏权限时却意外的生效了。 这种问题真是不常见&#xff0…

编译中的 CMP0148 警告

原因&#xff1a;CMake 3.12后&#xff0c; FindPythonInterp 及 FindPythonLibs被废弃 解决方法&#xff1a;使用 FindPython3、FindPython2、FindPython替换 实例&#xff1a;CMakeLists.txt中修改即可&#xff0c;如下图

微信小程序Error: ENOENT: no such file

问题描述 当编译的时候 会提示找不到这个文件&#xff08;index&#xff09;&#xff0c;但是确信项目目录里已经删除了该页面路径&#xff0c;并且app.json的pages列表中也 导致这个问题应该是&#xff1a;新添加了文件&#xff0c;后面删除了或者修改了文件名&#xff0c;导…

RabbitMQ 部署及配置详解(集群部署)

单机部署请移步&#xff1a; RabbitMQ 部署及配置详解 (单机) RabbitMQ 集群是一个或 多个节点&#xff0c;每个节点共享用户、虚拟主机、 队列、交换、绑定、运行时参数和其他分布式状态。 一、RabbitMQ 集群可以通过多种方式形成&#xff1a; 通过在配置文件中列出群集节点以…

6 Spring循环依赖

什么是循环依赖&#xff1f; // A依赖了B class A{ public B b; } // B依赖了A class B{ public A a; } 如果不考虑Spring&#xff0c;循环依赖并不是问题&#xff0c;因为对象之间相互依赖是很正常的事情 A a new A(); B b new B(); a.b b; b.a a; 这样&#xff0c;A&a…

echarts 横向柱状图示例

该示例有如下几个特点&#xff1a; ①实现tooltip自定义样式&#xff08;echarts 实现tooltip提示框样式自定义-CSDN博客&#xff09; ②实现数据过多时滚动展示&#xff08;echarts 数据过多时展示滚动条-CSDN博客&#xff09; ③柱状图首尾展示文字&#xff0c;文字内容嵌入图…

SQLMAP --TAMPER的编写

跟着师傅的文章进行学习 sqlmap之tamper脚本编写_sqlmap tamper编写-CSDN博客 这里学习一下tamper的编写 这里的tamper 其实就是多个绕过waf的插件 通过编写tamper 我们可以学会 在不同过滤下 执行sql注入 我们首先了解一下 tamper的结构 这里我们首先看一个最简单的例子…