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 相关文章推荐
javascript+xml技术实现分页浏览
Jul 27 Javascript
用JavaScript编写COM组件的步骤
Mar 17 Javascript
JavaScript截取字符串的Slice、Substring、Substr函数详解和比较
Mar 20 Javascript
ext前台接收action传过来的json数据示例
Jun 17 Javascript
理解Javascript的动态语言特性
Jun 17 Javascript
javascript 实现动态侧边栏实例详解
Nov 11 Javascript
input框中的name和id的区别
Nov 16 Javascript
lhgcalendar时间插件限制只能选择三个月的实现方法
Jul 03 Javascript
ReactNative之FlatList的具体使用方法
Nov 29 Javascript
jQuery 实现左右两侧菜单添加、移除功能
Jan 02 jQuery
详解vue使用vue-layer-mobile组件实现toast,loading效果
Aug 31 Javascript
js实现的订阅发布者模式简单示例
Mar 14 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 is_writable判断文件是否可写实例代码
2016/10/13 PHP
js变量作用域及可访问性的探讨
2006/11/23 Javascript
Add a Formatted Table to a Word Document
2007/06/15 Javascript
javascript 45种缓动效果 非常酷
2011/06/28 Javascript
jquery控制背景音乐开关与自动播放提示音的方法
2015/02/06 Javascript
js实现适用于素材网站的黑色多级菜单导航条效果
2015/08/24 Javascript
使用CSS+JavaScript或纯js实现半透明遮罩效果的实例分享
2016/05/09 Javascript
41个Web开发者必须收藏的JavaScript实用技巧
2016/07/22 Javascript
javascript self对象使用详解
2016/10/18 Javascript
正则表达式,替换所有HTML标签的简单实例
2016/11/28 Javascript
详解js树形控件—zTree使用总结
2016/12/28 Javascript
JavaScript 函数节流详解及方法总结
2017/02/09 Javascript
JS闭包用法实例分析
2017/03/27 Javascript
jQuery加密密码到cookie的实现代码
2017/04/18 jQuery
简述Angular 5 快速入门
2017/11/04 Javascript
Vue2.0用户权限控制解决方案
2017/11/29 Javascript
微信小程序实现的自定义分享功能示例
2019/02/12 Javascript
小程序富文本提取图片可放大缩小
2020/05/26 Javascript
el-table树形表格表单验证(列表生成序号)
2020/05/31 Javascript
jQuery实现电梯导航模块
2020/12/22 jQuery
简单的Python2.7编程初学经验总结
2015/04/01 Python
Python分治法定义与应用实例详解
2017/07/28 Python
手把手教你用python抢票回家过年(代码简单)
2018/01/21 Python
python中的闭包函数
2018/02/09 Python
python处理自动化任务之同时批量修改word里面的内容的方法
2019/08/23 Python
python基于FTP实现文件传输相关功能代码实例
2019/09/28 Python
Django实现文件上传下载功能
2019/10/06 Python
PyTorch中 tensor.detach() 和 tensor.data 的区别详解
2020/01/06 Python
Python 批量读取文件中指定字符的实现
2020/03/06 Python
Python实现列表中非负数保留,负数转化为指定的数值方式
2020/06/04 Python
移动端html5模拟长按事件的实现方法
2018/09/30 HTML / CSS
Expedia英国:全球最大的在线旅游公司
2017/09/07 全球购物
小学教师2014年度工作总结
2014/12/03 职场文书
班级元旦晚会开幕词
2015/01/29 职场文书
nginx+lua单机上万并发的实现
2021/05/31 Servers
Oracle 触发器trigger使用案例
2022/02/24 Oracle