Vue中加载百度地图
借助百度地图的 LocalSearch 和 Autocomplete 两个方法
实现方式:通过promise以及百度地图的callback回调函数
map.js
1 export function MP(ak) {
2 return new Promise(function (resolve, reject) {
3 window.init = function () {
4 resolve(BMap)
5 }
6 var script = document.createElement("script");
7 script.type = "text/javascript";
8 script.src = "http://api.map.baidu.com/api?v=2.0&ak="+ak+"&callback=init";
9 script.onerror = reject;
10 document.head.appendChild(script);
11 })
12 }
使用
1 <template>
2 <input type="text" id="suggestId" name="address_detail" placeholder="如门牌号等" v-model="address_detail" class="input_style">
3 <div id="allmap"></div>
4 </template>
5 <script>
6 import {MP} from '../../map'
7
8 data(){
9 return{
10 address_detail: null, //详细地址
11 userlocation:{lng:"",lat:""},
12 }
13 },
14 mounted(){
15 this.$nextTick(function () {
16 MP("你的ak").then( BMap => {
17 var th = this
18 var map = new BMap.Map("allmap"); // 创建Map实例
19 var point = new BMap.Point(116.404, 39.915); // 创建点坐标
20 map.centerAndZoom(point,15);
21 map.enableScrollWheelZoom();
22 var ac = new BMap.Autocomplete( //建立一个自动完成的对象
23 {"input" : "suggestId"
24 ,"location" : map
25 })
26 var myValue
27 ac.addEventListener("onconfirm", function(e) { //鼠标点击下拉列表后的事件
28 var _value = e.item.value;
29 myValue = _value.province + _value.city + _value.district + _value.street + _value.business;
30 this.address_detail = myValue
31 setPlace();
32 });
33
34 function setPlace(){
35 map.clearOverlays(); //清除地图上所有覆盖物
36 function myFun(){
37 th.userlocation = local.getResults().getPoi(0).point; //获取第一个智能搜索的结果
38 map.centerAndZoom(th.userlocation, 18);
39 map.addOverlay(new BMap.Marker(th.userlocation)); //添加标注
40 }
41 var local = new BMap.LocalSearch(map, { //智能搜索
42 onSearchComplete: myFun
43 });
44 local.search(myValue);
45 }
46 })
47 })
48 },
49 </script>
效果

Vue中加载百度地图的更多相关文章
- 在bootstrap modal 中加载百度地图的信息窗口失效解决方法
这个问题其实很傻,解决方法没有任何技术含量,只是记录下工作中发生的事. 前阵子给一个汽车集团客户做了一个经销商查询系统,其中一个功能是使用地图标注经销商店面地址,并且实现导航功能. 页面演示地址:ht ...
- (转) Arcgis for js加载百度地图
http://blog.csdn.net/gisshixisheng/article/details/44853709 概述: 在前面的文章里提到了Arcgis for js加载天地图,在本节,继续讲 ...
- Delphi中用Webbrowser加载百度地图滚轮失效(ApplicationEvents里使用IsChild提前判断是哪个控件的消息)
在Delphi中使用Webbrowser加载百度地图时,点击了其它界面,再回到百度地图中,即使点击了鼠标,再用滚轮也不能缩 放地图,除非点地图里面的自带的控件,之后才能缩放,原因是因为其它窗体控件获得 ...
- ArcMap和ArcGIS Pro加载百度地图
前面发布了两篇我用ArcBruTile开发用于ArcMap加载百度地图的插件ArcBruTileBaidu,放在网上后评论和反响还不错,还有两位大学同学通过百度搜索居然搜到我本人!文章和技术介绍也被网 ...
- Arcgis for js加载百度地图
看转:https://blog.csdn.net/qq_41046162/article/details/80248281 通过学习了一段时间的arcgis for js,让我来讲一下如何在arcgi ...
- vue中加载three.js的gltf模型
vue中加载three.js的gltf模型 一.开始引入three.js相关插件.首先利用淘宝镜像,操作命令为: cnpm install three //npm install three也行 二. ...
- Vue异步加载高德地图API
项目中用到了高德地图的API以及UI组件库,因为是直接把引入script写在index.html中,项目打包后运行在服务器,用浏览器访问加载第一次时会非常慢,主要原因是加载高德地图相关的js(近一分钟 ...
- 关于ios 程序加载百度地图lib,出现链接错误:找不到符号 (null): _OBJC_CLASS_$_BMKMapManager的解决办法
报告的错误信息 ld: warning: ignoring file /Users/5012/Documents/sphuang/IOS_project/baidu_map/ShareLocation ...
- Skyline中加载WMTS地图
Skyline中默认是Bing地图,必应虽然免费无偏移,但在国内的影像质量并不是很好.不用担心,Skyline支持多种影像图层,包括WFS.WMS.WMTS地图服务.使用地图作为底图有两个好处: (1 ...
随机推荐
- 输出单层结点 牛客网 程序员面试金典 C++ Python
输出单层结点 牛客网 程序员面试金典 C++ Python 题目描述 对于一棵二叉树,请设计一个算法,创建含有某一深度上所有结点的链表. 给定二叉树的根结点指针TreeNode* root,以及链表上 ...
- CSS学习笔记:浮动属性
目录 一.浮动流是什么 二.通过代码实例了解浮动特点 1. 搭建测试框架 2. 添加浮动 3. 浮动元素的排布 4. 给行内元素添加浮动效果 5. 子元素浮动后对父元素的影响 5.1 在父元素中添加o ...
- 优客源创会 西安站 西邮Linux兴趣小组
2016年5月19日晚7:00,优客源创会西安站在西安邮电大学长安校区东区教学楼FF305如期举行,西安邮电大学计算机学院教授.西邮Linux兴趣小组指导老师陈莉君.王小银老师和来自开源中国的周凯先生 ...
- 装了这几个IDEA插件,基本上一站式开发了!
前言 前几天有社区小伙伴私聊我,问我都用哪些IDEA插件,我的IDEA的主题看起来不错. 作为一个开源作者,每周要code大量的代码,提升日常工作效率是我一直追求的,在众多的IDEA插件中,我独钟爱这 ...
- Java使用assert断言
Java1.4后新增assert关键字 Idea中开启assert断言 使用 assert boolean表达式 assert boolean表达式 : 错误提示信息 例子 public static ...
- 力扣 - 剑指 Offer 59 - I. 滑动窗口的最大值
题目 剑指 Offer 59 - I. 滑动窗口的最大值 思路1(单调队列) 使用单调(递减)队列,保持队列中的元素是递减顺序,队列头保存的是当前窗口中最大的元素 首先先模拟建立第一个窗口,同时获取第 ...
- mysql查询报错this is incompatible with sql_mode=only_full_group_by
临时改法:select @@GLOBAL.sql_mode;查询当前mysql的模式去掉ONLY_FULL_GROUP_BY重新设置:set @@GLOBAL.sql_mode='STRICT_TRA ...
- OOP 4.21晚 指针知识点
1.读法:int* ptr ptr是一个指针指向整型变量 2.指针类型:指针声明语句里的指针名字去掉,剩下的部分就是这个指针的类型; 3.指针所指向的类型:只须把指针声明语句中的指针名字和名字左边的指 ...
- 大爽Python入门教程 3-5 习题
大爽Python入门公开课教案 点击查看教程总目录 1 求平方和 使用循环,计算列表所有项的平方和,并输出这个和. 列表示例 lst = [8, 5, 7, 12, 19, 21, 10, 3, 2, ...
- Linux下Zabbix5.0 LTS添加MySQL监控,实现邮件报警并执行预处理操作
依据前文:Linux下Zabbix5.0 LTS监控基础原理及安装部署(图文教程) 环境,继续添加MySQL应用集. 第一部分:添加Zabbix自带的MySQL应用集. 在ZabbixClient-0 ...