Vue中引入高德地图cdn链接方式汇总(可按需加载)

vue中使用高德地图 vue中使用高德地图 在vue项目中找到index.html,添加高德地图的cdn,一般放在public文件夹下 <script type="text/javascript" src="https://webapi.amap.com/maps?v=1.4.15&key=你申请的key"></script> 2.在vue.config.js中添加以下代码(配置文件修改后需要重启项目) module.exports = { configureWebpack: { ... 阅读详情

随着时间流逝,人的初心是否会改变呢?今日博客分享vue引入高德地图几种方式~

1、方式一,引用封装好的vue-amap组件,具体操作见官方文档

官网链接:https://elemefe.github.io/vue-amap/#/zh-cn/introduction/install

npm install vue-amap --save

由于vue-amap封装的功能有限,因此不可避免的需要引入高德地图的cdn链接

2、网上已经普遍有一种引入方式,具体如下

(1)进入当前vue目录下的index.html直接引入cdn链接

<!DOCTYPE html>
<html>
  <head>
    <meta charset="utf-8">
    <meta name="viewport" content="width=device-width,initial-scale=1.0">
    <title>test</title>
    <!--高德地图js-->
    <script type="text/javascript" src="https://webapi.amap.com/maps?v=1.4.14&key=您申请的key值&callback=onLoad"></script>
  </head>
  <body>
    <div id="app"></div>
    <!-- built files will be auto injected -->
  </body>
</html>

(2)配置build/webpack.base.conf.js,在module.export中加入externals配置项,当做外部资源引入,据说有如下注释的功能,但是在开发环境貌似感觉没啥区别。。。

  externals:{
    "AMap":'AMap'
//key是项目内使用组件的名称,value是高德对外暴露的名称(这样配置的话webpack在dev run dev或者run build的时候就不会去本地组件包查找该资源,而是直接去windown域下载)
  },

3、上面的方式网页一进入index.html文件,高德地图资源便会进行加载,那么问题来了,当我页面只有一个组件需要用到高德地图,想实现只有进入到某个特定组件时,才请求高德地图cdn链接,如何做到按需加载呢?经过尝试有以下两种方法

方法一:通过引入webpack-require-http插件配合require引入,注意2.1版本require([''],function(){})是异步加载,之前 require('') 同步加载,同步加载一直加载报错,最终实现如下

(1)引入webpack-require-http插件,还是当做外部资源引入这个插件,配置build/webpack.base.conf.js,在module.export中加入externals配置项

  externals:[
    //注意这里是[]
    require('webpack-require-http')
  ]

(2)vue文件中引入

<template>
  <div>
    <button @click="getMap">获取map对象</button>
    <div id="map" style="width:100%;height:800px"></div>
  </div>
</template>
<script>
  // import AMap from 'AMap'
  export default {
    data() {
      return {
        mapObj: null
      }
    },
    methods: {
      getMap() {
        console.log("this map obj", this.mapObj);
      }
    },
    beforeMount() {
      require(["https://webapi.amap.com/maps?v=1.4.14&key=您申请的key值"],()=>{
         setTimeout(()=>{
          var map = new AMap.Map('map', {
          resizeEnable: true, //是否监控地图容器尺寸变化
          zoom: 11, //初始化地图层级
          center: [116.397428, 39.90923] //初始化地图中心点
          });
         },1500);
      })
    },
    destroyed(){
      console.log("destroyed");
    }
  }
</script>

方法二:动态的给index.html头部加入高德地图资源

(1)直接在组件内部引入即可,一步操作即可实现

<template>
  <div>
    <button @click="getMap">获取map对象</button>
    <div id="map" style="width:100%;height:800px"></div>
  </div>
</template>
<script>
  // import AMap from 'AMap'
  export default {
    data() {
      return {
        mapObj: null
      }
    },
    methods: {
      getMap() {
        console.log("this map obj", this.mapObj);
      }
    },
    mounted() {
    },
    beforeMount() {
      let $self = this;
      window.onLoad = function () {
        var map = new AMap.Map('map', {
          resizeEnable: true, //是否监控地图容器尺寸变化
          zoom: 11, //初始化地图层级
          center: [116.397428, 39.90923] //初始化地图中心点
        });
        AMap.plugin('AMap.ToolBar', function () {//异步加载插件
          var toolbar = new AMap.ToolBar();
          map.addControl(toolbar);
        });
        $self.mapObj = map;
      }
      var url = 'https://webapi.amap.com/maps?v=1.4.14&key=您申请的key值&callback=onLoad';
      var jsapi = document.createElement('script');
      jsapi.charset = 'utf-8';
      jsapi.src = url;
      jsapi.id = "amapjs";
      document.head.appendChild(jsapi);
    },
    destroyed() {
      document.getElementsByTagName("head")[0].removeChild(             
      document.getElementById("amapjs"));
      console.log("destroyed");
    }
  }

以上方法在进入引用的组件时候才会加载出高德地图,在vue上面引入插件,建议通过异步加载插件引入,由于是操作到了index.html高德地图已经出现就会保留,只有页面刷新时候index.html头部资源才会消失,因此若是想实现跳出组件地图实时删除请在vue声明周期destroy中进一步操作。

Vue中高德地图获取经纬度及逆地理解析的两种方式CDN或NPM(协议必须是https) 否则定位会一直失败 Vue中高德获取经纬度及逆地理解析的两种方式CDN或NPM,复制即可 阅读详情

相关推荐

vue项目首屏加载优化

1、将第三方资源使用cdn引入 将项目中用到的一些第三方库通过cdn的方式引入的话,在打包的时候就不需要对第三方库进行打包,自然就减小了包的大小,首屏加载的时候所加载的内容也就减少了,加载时间就少了。 vue项目中通过cdn引入资源并配置 2、路由懒加载 实现路由懒加载的方法 3、图片懒加载 实现图片懒加载的方法 4、图片压缩 实现图片压缩的方法 5、代码压缩 ...

jiangjunyuan168的博客 1087

CDN vue 调用高德地图api

<!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8"> <meta http-equiv="X-UA-Compatible" content="IE=edge"> <script src="https://cdn.jsdelivr.net/npm/vue/dist/vue.js"></script> <script

Yweir的博客 799

vue2/3 - 详细实现内网使用离线高德地图功能,在vue中无需网络离线使用高德地图相关功能,高德地图如何离线加载详细教程(内网部署及使用),提供最新完整的瓦片资源下载及相关工具(示例代码,一键复制

vue,vue2,vue3,高德地图,离线使用高德地图,高德地图瓦片官方下载,vue内网使用高德地图离线无网络,断网情况下使用高德地图,vue离线高德地图教程,如何实现内网部署高德地图,无需联网离线使用,vue+ts实现离线高德地图 内网离线高德地图,如何在高德地图Vue项目中下载离线地图,高德离线地图加载不出来,高德地图离线使用不显示怎么办,怎么解决vue内网使用离线高德地图加载失败问题,vue实现离线地图+高德瓦片,vue引入高德离线地图,vue项目如何使用离线高德地图和自定义地图样式,高德离线地图的下

✅ 精选推荐文章 1万+

vue3+高德地图实现模糊搜索功能,超详细,不信你不会

一定要选中Web(JS API),不是Web服务

qq_42506385的博客 6843

vue3 - 详细实现内网使用离线高德地图功能,在vue3中无需网络离线使用高德地图相关功能,高德地图如何离线加载详细教程(内网部署及使用),提供最新完整的瓦片资源下载及相关工具(示例代码,一键复制)

vue3,高德地图,离线使用高德地图,高德地图瓦片官方下载,内网使用高德地图离线无网络,断网情况下使用高德地图,vue离线高德地图教程,内网部署高德地图,无需联网离线使用,vue3+ts实现离线高德地图 内网离线高德地图,如何在高德地图Vue3项目中下载离线地图,地图加载不出来,不显示怎么办,内网使用离线高德地图加载失败问题,vue3实现离线地图+高德瓦片,vue3高德离线地图,如何使用离线高德地图和自定义地图样式,高德离线地图的下载,怎么下载高德地图瓦片,一键把所有瓦片都下载下来,离线加载,内网部署,离线

✅ 精选推荐文章 1万+

跟着团子学SAP PS:项目计划成本与项目预算设计思路

​在做SAP PS模块概览培训的时候,很多时候都会用到下面的一页PPT片子讲到项目计划成本与预算的关系,但真正这幅片子想表达的具体内容甚至大部分PS顾问也是无法阐明清楚的。 而SAP PS的设计其实是在丰富的项目管理学的基础上而开展的,所以今天从业务上结合SAP中的功能点讲一下项目成本计划及预算的逻辑。 在项目管理的十大知识领域中,项目成本管理主要是包括为使项目在批准的预算内完成而对成本进行规划...

Lucas1211的博客 3万+

Vue/React项目里用高德地图,amap-jsapi-loader和CDN到底怎么选?一篇讲清优劣与避坑

本文深度对比Vue/React项目中高德地图的两种引入方案:CDN与amap-jsapi-loader。从加载方式、工程化适配、框架集成到异常处理,全面解析其优劣与适用场景,帮助开发者避免常见报错并做出最优选择。特别针对模块化支持、性能优化和团队协作规范提供实用建议。

weixin_29009669的博客 247

从“手扫感应灯”拆解开始:聊聊三极管放大电路在生活中的那些实用设计

本文通过拆解手扫感应灯,深入探讨了三极管放大电路在日常生活中的实用设计。从红外信号放大到环境干扰应对,详细解析了电路配置技巧和调试方法,并延伸至声控灯、电容感应等智能家居应用,帮助读者理解并掌握三极管放大电路的核心原理与实践技巧。

weixin_42627853的博客 390

vue调用高德地图

1、申请高德地图key 地址:https://lbs.amap.com/dev/key/app 2、在index.html页面引入cdn 3、在地图组件的页面引入Amap 1 <template> 2 <div> 3 <div id="container" style="width:100%; height:900px"&g...

weixin_30699831的博客 127

Python | 集合(set)运算之intersection()

简介 在做力扣题的时候,有一个思路是要求解两个字符串的交集。 一般来说,求解交集的思路是遍历两个字符串,判断有无相等,有相等则添加到交集中,直到循环结束。 但是这样做,会增加很多的不必要的遍历:比如说,当一个字符串中有多个相同的元素时,该元素会被遍历多次。 因此,在求解时,我们可以先将字符串转换为set集合类型。集合中存储的元素没有顺序,且互异(即元素不可重复)。 算例 求字符串m“abcdaaa” 与 字符串n“bcddses”是否存在交集 首先将字符串转换为set类型: m = set(m) n

lovetaozibaby的博客 1万+

ESP32开发环境避坑指南:用Thonny烧录MicroPython固件时常见的5个错误及解决方法

本文针对ESP32开发新手,详细解析了使用Thonny IDE烧录MicroPython固件时最常见的5个错误及其解决方案。内容涵盖驱动安装、端口识别、固件烧录失败、版本兼容性、连接不稳定以及文件系统操作异常等核心痛点,并提供硬件层面的深度排查指南,帮助开发者高效搭建稳定的ESP32开发环境。

weixin_29189003的博客 410

Filee 电子书批量转 PDF 完整指南

Filee 是一款免费开源的文件转换器,内置电子书引擎,EPUB、MOBI、**KEPUB** 都能批量转成 PDF。 [![Filee 拖放圆环批量转 PDF:按住 Ctrl 拖动文件到格式圆环,放到 PDF 上松手即可](https://raw.gitcode.com/gh_mirrors/fi/Filee/raw/aad99622f110c8b66a3ac7115e8ff6375fdc56

gitblog_01050的博客 147

ESP32-C61 eFuse控制器深度解析:寄存器架构与安全烧写实践

eFuse(电子熔丝)是嵌入式芯片实现硬件级不可逆配置与信任根构建的核心物理机制,其本质是通过电学编程固化关键安全参数。原理上依赖熔丝单元的单向导通/断开特性,结合Reed-Solomon纠错、多级写保护和时序可控编程,保障数据在宽温域与工艺偏差下的高可靠性。技术价值在于为Secure Boot、Flash加密、密钥隔离等安全功能提供可信锚点,支撑从启动到运行的全链路防护。典型应用场景涵盖物联网设备量产烧录、安全启动使能、MAC地址固化及抗DPA密码运算配置。本文聚焦ESP32-C61平台,深入解析其eFu

weixin_42589700的博客 123

Vue.js 项目中集成高德地图 API

首先,你需要在你的 Vue 项目中引入高德地图的 JS API。- 确保你已经获取了一个有效的 API Key,并且正确地替换了示例代码中的 `YOUR_API_KEY`。如果你更倾向于通过 npm 安装,可以使用一个包装好的库,例如 `vue-amap`。- 如果你使用的是 npm 安装方式,请确保 Vue 项目已经正确配置了 `vue-amap`。请确保将 `YOUR_API_KEY` 替换为你的高德地图 API Key。```### 第二步:创建地图组件。```### 第三步:使用地图组件。

weixin_68187288的博客 623

【题解-洛谷】B3644 【模板】拓扑排序 / 家谱树

有个人的家族很大,辈分关系很混乱,请你帮整理一下这种关系。给出每个人的后代的信息。输出一个序列,使得每个人的后辈都比那个人后列出。输出一个序列,使得每个人的后辈都比那个人后列出。如果有多种不同的序列,输出任意一种即可。),表示家族的人数。

写代码的犄角旮瘩 1065

详解FreeRTOS:事件标志组(高级篇—5)

事件组可以实现一对多,多对多的同步,即一个任务可以等待多个事件的发生。任务可以通过设置事件位来实现事件的触发和等待操作,FreeRTOS的事件仅用于同步,不提供数据传输功能。

不脱发的程序猿 1076

Vue项目实战:高德地图3D模型加载与.obj转.gltf全流程解析

本文详细解析了在Vue项目中为高德地图加载3D模型的全流程。核心内容包括使用obj2gltf工具将常见的.obj格式模型转换为高德地图支持的.gltf格式,并深入讲解在Vue组件中集成AMap.GltfLoader进行模型加载、位置与朝向调试的实战技巧。同时,提供了模型部署路径方案、性能优化建议及常见问题排查指南,助力开发者高效实现三维可视化场景。

5f4d3s2a1q的博客 699

YOLOv8交通监控全方案:精准车辆计数+违章(闯红灯/压线)识别,拿来就落地!

作为深耕计算机视觉落地的开发者,我见过太多交通监控的“伪智能”——传统系统要么车辆计数不准(漏计/重复计数),要么违章识别滞后(靠人工回看录像),甚至连“闯红灯、压线”这类常见违章都无法实时判定,完全满足不了实际交通管理需求。

专注于Python爬虫开发,分享爬虫技巧、项目实战与反爬经验,使用Scrapy、BeautifulSoup等工具,解决数据抓取难题。 649

vue里使用高德地图

一.发现vue-amap 发现vue-amap插件,优点是文档详细,易于上手 二.使用vue-amap 1 准备   在使用这个插件之前,首先需要申请高德地图的key。这个到官网就可以申请。申请过程就不叙述了。 2 安装vue-amap npm包安装:npm install -svue-amap CDN安装:引入组件 3 引入vue-amap(这里以npm安装方式为例) 4 使用...

weixin_33414202的博客 102

jre9下载 jdk9

(Java SE Runtime Environment 9.0) 9.0u175 官方最新版 【x86|x64】

lwip-2.0.3

lwip是瑞典计算机科学院(SICS)的Adam Dunkels 开发的一个小型开源的TCP/IP协议栈。实现的重点是在保持TCP协议主要功能的基础上减少对RAM 的占用。

VUE中调用高德地图获取当前位置(VUE2.0和3.0通用)

一个简单、但是稳定性稍差的使用高德地图定位的方法

dancingwu的博客 5280

android 蓝牙通讯demo

android 下蓝牙通讯demo,实现了发现蓝牙,使能蓝牙,通过蓝牙发送消息。

vue-amap 完全指南:10分钟快速上手Vue地图组件开发

vue-amap是基于Vue 2.x和高德地图的地图组件,它让开发者能够轻松地在Vue项目中集成高德地图功能。无论是构建位置服务应用还是地图可视化项目,vue-amap都能提供简单高效的解决方案。本文将带你快速掌握vue-amap的安装配置和基础使用方法,让你在10分钟内即可上手Vue地图组件开发。 ## 快速安装vue-amap的两种方法 ### npm安装(推荐) 对于现代Vue项目,推荐

gitblog_00510的博客 697

高德地图API混用报错排查指南:从冲突现象到精准定位

本文针对高德地图API开发中常见的‘禁止多种API加载方式混用’报错,提供了从现象分析到精准定位的完整排查指南。文章深入剖析了CDN引入与NPM包异步加载等方式冲突的本质,并系统性地介绍了检查HTML模板、梳理JS依赖、审查网络请求与构建配置的排查步骤,最终给出统一加载方式的修复方案与预防最佳实践。

js777的博客 428

Filee 文件转换器手把手入门:装好就能转

对方发来的 HEIC 图打不开,提交材料又必须先转成 PDF——这正是 Filee 要解决的。它是一款免费开源的离线文件转换器:按住按键把文件拖到光标旁的圆环上,放到目标格式即可。支持 270 种格式,全程本地处理,文件不上传,也无需安装 Office。 ## 安装前看一眼:三个平台的系统要求 先确认你的系统走哪条路线,后面的步骤就能直接对应: | 平台 | 系统版本要求 | 安装入口 |

gitblog_00645的博客 287

v-charts 快速开始:Vue 2 项目中完整引入与按需引入的实战指南

v-charts 是基于 Vue 2.x 与 ECharts 封装的图表组件库,通过统一的 `columns/rows` 数据格式即可快速渲染常见图表。本篇指南以 [docs/start.md](https://link.gitcode.com/i/8cfa3179d7646372f493b655a740b493) 为核心,系统讲解在 Vue 2 项目中通过 `Vue.use()` 完整引入、以及

gitblog_00757的博客 136

Vue图表(v-charts, e-charts)入门安装使用

Vue 中常使用的图标主要包括 e-charts 和 v-charts,如果仅为简单使用图表,推荐使用 v-charts,如果使用图表较为复杂,则使用 e-charts

weixin_45924425的博客 9038
上一篇: 基于zTree的常用成员管理树图级联选择(仿穿梭框功能)
下一篇: 自定义封装Vue倒计时组件vuecountdown
小简GoGo
博客等级 码龄10年 50粉丝 32原创
评论 4
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值