前端vue使用高德地图
首先,注册Key
1、注册开发者账号,成为高德开放平台开发者
2、登陆之后,在进入「应用管理」 页面「创建新应用」
3、为应用添加 Key,「服务平台」一项请选择「 Web 端 ( JSAPI ) 」
然后,书写代码
在vuecli public文件夹中的index.html添加导入 JS API 的入口脚本标签
<!DOCTYPE html>
<html lang="en"> <head>
<meta charset="utf-8">
<meta http-equiv="X-UA-Compatible" content="IE=edge">
<meta name="viewport" content="width=device-width,initial-scale=1.0">
<link rel="icon" href="./iconLink.png">
<title>高德地图</title>
<script type="text/javascript" src="http://webapi.amap.com/maps?v=2.0&key=d6c35bb2619f107f86ccda4b378415f6&plugin=AMap.MouseTool"></script> <!-- 只是我的key,可以暂时用为测试(不定什么时候失效) -->
<script src="//webapi.amap.com/ui/1.1/main.js?v=1.1.1"></script> <!-- 高德官方文档的ui库 --> </head> <body> <div id="app"></div> </body>
</html>
在vue.config.js中修改配置
module.exports = {
publicPath: "./",
configureWebpack: {
externals: {
AMap: 'window.AMap',
AMapUI: 'window.AMapUI' // 高德地图配置
},
}
};
接下来,正式书写vue组件
废话不多说,直接上代码
<template>
<div class="map_wrapper">
<div class="box">
<div id="container" style="width: 100%; height: 500px"></div>
</div>
</div>
</template> <script lang="ts">
import { Vue, Component, Prop, Watch } from 'vue-property-decorator';
@Component({
})
export default class page extends Vue {
// 使用 import AMap from 'amap'; 会有编辑器报错Cannot find module 'amap'; 所以变通换一种写法
protected AMap: any = (window as any).AMap;
protected AMapUI: any = (window as any).AMapUI;
// 如果写在created会报错 "Error: Map container div not exist"
mounted() {
let map = new this.AMap.Map('container', {
center: [121.227577, 31.101471], // 中心点坐标
resizeEnable: true, // 是否监控地图容器尺寸变化
zoom: 10, // 初始化地图层级,可以理解为缩放比例
showMarker: true, // 定位成功后在定位到的位置显示点标记,默认:true
}); //加载SimpleInfoWindow,loadUI的路径参数为模块名中 'ui/' 之后的部分
this.AMapUI.loadUI(['overlay/SimpleInfoWindow'], (SimpleInfoWindow: any) => {
let marker = new this.AMap.Marker({
map: map,
zIndex: 9999999,
position: map.getCenter(),
}); let infoWindow = new SimpleInfoWindow({
infoTitle: '<strong>这里是标题</strong>',
infoBody: '<p>这里是内容。</p>',
offset: new this.AMap.Pixel(0, -31), // 文本定位偏移
});
//显示在map上
function openInfoWin() {
infoWindow.open(map, marker.getPosition());
}
marker.on('click', () => {
openInfoWin(); // 点击标记时显示文本
});
openInfoWin();
});
}
}
</script> <style scoped lang="scss"></style>
页面效果如下
前端vue使用高德地图的更多相关文章
- vue调用高德地图:vue-amap
前言:之前没有接触过页面调用地图的项目,某次面试,老板要求我用vue-amap调用高德地图,回家以后,我去网上查了一些案例和教程,看似很简单的引入调用,我却整整弄了一宿,还没弄出来!!!百般无奈之下, ...
- vue集成高德地图
vue集成高德地图 前言 二.使用步骤 1.注册高德开发平台 2.vue 结尾 前言 之前玩Thymeleaf的时候玩过高德地图,现在无聊Vue项目也整个地图进去~ 二.使用步骤 1.注册高德开发平台 ...
- vue 调用高德地图
一. vue-amap,一个基于 Vue 2.x 和高德地图的地图组件 https://elemefe.github.io/vue-amap/#/ 这个就不细说了,按照其文档,就能够安装下来. 二. ...
- vue 使用高德地图vue-amap组件
首先 npm install -S vue-amap 然后在 main.js import VueAMap from 'vue-amap'; //注意不要和 AMap原始名称覆盖 Vue.use ...
- vue 引用高德地图
vue 引用地图之傻瓜式教程(复制粘贴即可用) npm 下载 npm install vue-amap --save main.js 代码 import AMap from 'vue-amap'; V ...
- vue 高德地图之玩转周边
前言:在之前的博客中,有成功引入高德地图,这是以前的地址 vue 调用高德地图. 因为一些需求,需要使用到地图的周边功能. 完整的项目代码请查看 我的github 一 .先看要实现的结果,参考了链 ...
- 基于vue 2.X和高德地图的vue-amap组件获取经纬度
今天我就讲了一下怎么通过vue和高德地图开发的vue-amap组件来获取经纬度. 这是vue-amap的官网文档:https://elemefe.github.io/vue-amap/#/ 这是我的码 ...
- VUE 高德地图选取地址组件开发
高德地图文档地址 http://lbs.amap.com/api/lightmap/guide/picker/ 结合步骤: 1.通过iframe内嵌引入高德地图组件 key就选你自己申请的key &l ...
- vue中使用vue-amap(高德地图)
因为项目要求调用高德地图,就按照官方文档按部就班的捣鼓,这一路上出了不少问题. 前言: vue-cli,node环境什么的自己安装设置推荐一个博客:https://blog.csdn.net/wula ...
随机推荐
- 为什么国内的好多具备 HTTPS 的网站却没有使用 HTTPS 重定向功能
为什么国内的好多具备 HTTPS 的网站却没有使用 HTTPS 重定向功能 HTTPS 重定向 good demos ️ HTTPS http://www.xgqfrms.xyz/ https://w ...
- ServerLess & MongoDB Atlas & REST API
ServerLess & MongoDB Atlas & REST API ServerLess, Nodejs, MongoDB Atlas cloud 构建 REST API ht ...
- Versatile Python 3.x
Versatile Python 3.x TryPython Python 3.8.0 (default, Nov 14 2019, 22:29:45) [GCC 5.4.0 20160609] on ...
- how to create one single-file Web Component just using the HTML, CSS, JavaScript
how to create one single-file Web Component just using the HTML, CSS, JavaScript web components html ...
- taro external-class
taro external-class https://nervjs.github.io/taro/docs/component-style.html externalClasses child co ...
- uniapp 在h5和小程序上使用高德获取用户城市位置
开发文档 https://lbs.amap.com/api 错误状态 https://lbs.amap.com/api/webservice/guide/tools/info/ 虽然用的高德但是你还需 ...
- 使用docker mediawiki,搭建网页wiki
我只是想做一个大家都能访问的wiki,用于成员间共享和维护一些文档.找到了docker的mediawiki,这里记录一下我怎么搭的吧. 首先,如果你在一个局域网里,有公用的可以访问的服务器,那可以直接 ...
- 数理统计16:NP理论、似然比检验、假设检验与区间估计
本文介绍Neyman-Pearson理论,这也是我们会见到的最常见假设检验问题类,这里第一Part的概念介绍略显枯燥,大家尽量理解即可.由于本系列为我独自完成的,缺少审阅,如果有任何错误,欢迎在评论区 ...
- 自己的Scrapy框架学习之路
开始自己的Scrapy 框架学习之路. 一.Scrapy安装介绍 参考网上资料,先进行安装 使用pip来安装Scrapy 在开始菜单打开cmd命令行窗口执行如下命令即可 pip install Scr ...
- the import java.util cannot be resolve
重新配置一下build path 的jre,如果不行的话就重新设置jre(在add library中installed JREs)