Vue-Cli 3.0 中配置高德地图的两种方式


Posted in Javascript onJune 19, 2019

 vue 中使用高德地图有两种方式

一、vue-amap 组件

官网: https://elemefe.github.io/vue-amap/#/

开始的时候是打算用这个组件做地图功能的,但是尝试之后存在些问题,所以就放弃了,可能是我的使用方式不对。我所遇到的问题:

1. 安装之后使用,始终提示跨域问题。

2. 页面刷新之后地图出不来,第一次进入页面时没问题。因为这两个问题所以放弃了这个组件的使用。我想可能是我哪个地方代码有问题。

二、直接引用高德地图 SDK

因为第一种方式尝试失败了,所以我选择了直接引用SDK的方式。使用这种方式没有出现方式一中存在的问题。直接引用SDK的方式步骤:

1. 在 public 文件夹下的 index.html 中加入

<script type="text/javascript" src="http://webapi.amap.com/maps?v=1.4.4&key=你申请的key"></script>

2. 在 vue.config.js 文件中配置 externals

module.exports = {
 devServer: {
  port: 57103 // 端口号配置
 },
 configureWebpack: {
  externals: {
   'AMap': 'AMap' // 高德地图配置
  }
 }
}

注: vue.config.js 文件要自己创建,vue-cli 3.0 不会自动生成此文件。 此外,修改 vue.config.js 不会触发热加载,也就是修改之后你需要重新 run 一下你的项目,它才能生效。

 3. 实际使用

<template>
 <div class="box">
  <div id="container" style="width:500px; height:300px"></div>
 </div>
</template>

<script>
import AMap from 'AMap' // 引入高德地图
export default {
 mounted () {
  this.init()
 },
 methods: {
  init () {
   let map = new AMap.Map('container', {
    center: [116.397428, 39.90923],
    resizeEnable: true,
    zoom: 10
   })
  }
 }
}
</script>

注:init() 方法请在 mounted 生命周期中调用,因为如果在 created 阶段调用,会找不到 html 元素 div#container

4. 效果图

Vue-Cli 3.0 中配置高德地图的两种方式

总结

以上所述是小编给大家介绍的Vue-Cli 3.0 中配置高德地图的两种方式,希望对大家有所帮助,如果大家有任何疑问欢迎给我留言,小编会及时回复大家的!

Javascript 相关文章推荐
为jquery的ajaxfileupload增加附加参数的方法
Mar 04 Javascript
Javascript玩转继承(三)
May 08 Javascript
javascript模拟php函数in_array
Apr 27 Javascript
详解JavaScript基于面向对象之创建对象(2)
Dec 10 Javascript
BootStrap无限级分类(无限极分类封装版)
Aug 26 Javascript
详解微信小程序开发之城市选择器 城市切换
Jan 17 Javascript
inner join 内联与left join 左联的实例代码
Sep 18 Javascript
AngularJS实现的生成随机数与猜数字大小功能示例
Dec 25 Javascript
JavaScript学习教程之cookie与webstorage
Jun 23 Javascript
js 判断当前时间是否处于某个一个时间段内
Sep 19 Javascript
浅析Vue下的components模板使用及应用
Nov 27 Javascript
Vue 自适应高度表格的实现方法
May 13 Javascript
vue axios重复点击取消上一次请求封装的方法
Jun 19 #Javascript
javascript创建元素和删除元素实例小结
Jun 19 #Javascript
Vue 2.0 侦听器 watch属性代码详解
Jun 19 #Javascript
js获取对象,数组所有属性键值(key)和对应值(value)的方法示例
Jun 19 #Javascript
js简单遍历获取对象中的属性值的方法示例
Jun 19 #Javascript
ionic4+angular7+cordova上传图片功能的实例代码
Jun 19 #Javascript
vue实现后台管理权限系统及顶栏三级菜单显示功能
Jun 19 #Javascript
You might like
用PHP实现WEB动态网页静态
2006/10/09 PHP
PHP中绘制图像的一些函数总结
2014/11/19 PHP
PHP贪婪算法解决0-1背包问题实例分析
2015/03/23 PHP
php获取json数据所有的节点路径
2015/05/17 PHP
Composer设置忽略版本匹配的方法
2016/04/27 PHP
PHP hebrev()函数用法讲解
2019/02/21 PHP
Yii Framework框架开发微信公众平台示例
2020/04/26 PHP
一个简单的JavaScript数据缓存系统实现代码
2010/10/24 Javascript
javascript常用函数归纳整理
2014/10/31 Javascript
JavaScript实现字符串与日期的互相转换及日期的格式化
2016/03/07 Javascript
jquery实现文本框textarea自适应高度
2016/03/09 Javascript
浅谈Javascript数组(推荐)
2016/05/17 Javascript
jQuery Easyui datagrid/treegrid 清空数据
2016/07/09 Javascript
用jQuery.ajaxSetup实现对请求和响应数据的过滤
2016/12/20 Javascript
angular过滤器实现排序功能
2017/06/27 Javascript
VUE 使用中踩过的坑
2018/02/08 Javascript
[04:28]2014DOTA2国际邀请赛 采访小兔子LGD挺进钥匙体育馆
2014/07/14 DOTA
python 从远程服务器下载日志文件的程序
2013/02/10 Python
Python实现自动添加脚本头信息的示例代码
2016/09/02 Python
Python迭代器与生成器基本用法分析
2018/07/26 Python
python 求10个数的平均数实例
2019/12/16 Python
解决python replace函数替换无效问题
2020/01/18 Python
jupyter使用自动补全和切换默认浏览器的方法
2020/11/18 Python
双十佳事迹材料
2014/01/29 职场文书
成人继续教育实施方案
2014/03/01 职场文书
《地震中的父与子》教学反思
2014/04/10 职场文书
让生命充满爱演讲稿
2014/05/10 职场文书
汉语言文学专业求职信
2014/06/19 职场文书
理财学专业自荐书
2014/06/28 职场文书
小学社会实践活动总结
2014/07/03 职场文书
写给女朋友的检讨书
2015/05/06 职场文书
导游词之永泰公主墓
2019/12/04 职场文书
Mysql中where与on的区别及何时使用详析
2021/08/04 MySQL
Java Spring 控制反转(IOC)容器详解
2021/10/05 Java/Android
vue3语法糖内的defineProps及defineEmits
2022/04/14 Vue.js
5个实用的JavaScript新特性
2022/06/16 Javascript