首页 > 其他分享 >js如何引入高德地图API?

js如何引入高德地图API?

时间:2023-04-11 15:27:59浏览次数:44  
标签:js API 窗体 AMap key Marker JS 高德

准备

 

成为开发者并创建 key

1、登录控制台

登录 高德开放平台控制台,如果没有开发者账号,请 注册开发者

2、创建 key

进入应用管理,创建新应用,新应用中添加 key,服务平台选择 Web端(JS API)。

 

3、获取 key 和密钥

创建成功后,可获取 key 和安全密钥。

快速上手

1、HTML 页面准备

编写 HTML 页面的基本结构代码,需要一个节点来承载地图,本教程中使用 <div id="container"></div>,id 可以自定义。

<!doctype html>
<html>
<head>
    <meta charset="utf-8">
    <meta http-equiv="X-UA-Compatible" content="IE=edge">
    <meta name="viewport" content="initial-scale=1.0, user-scalable=no, width=device-width">
    <title>HELLO,AMAP!</title>
    <style>
        html, body, #container {
          width: 100%;
          height: 100%;
        }
    </style>
</head>
<body>
  <div id="container"></div>
</body>
</html>

2、JS API 的加载和地图初始化

使用 JS API Loader 加载,写入在 控制台 申请的 key 和安全密钥。

<script type="text/javascript">
  window._AMapSecurityConfig = {
    securityJsCode:"「您申请的安全密钥」",
  }
</script>
<script src="https://webapi.amap.com/loader.js"></script>
<script type="text/javascript" >
  AMapLoader.load({
    key: "「您申请的应用Key」",       // 申请好的Web端开发者Key,首次调用 load 时必填
    version: "2.0",                 // 指定要加载的 JSAPI 的版本,缺省时默认为 1.4.15
  }).then((AMap)=>{
    const map = new AMap.Map('container');
  }).catch((e)=>{
    console.error(e);  //加载错误提示
  });   
</script>

3、添加点标记 Marker

JS API 提供了在地图之上绘制覆盖物的能力,现在我们添加add()一个默认的点标记Marker。

const marker = new AMap.Marker({
  position:[116.39, 39.9] //位置
})
map.add(marker); //添加到地图

 

4、为点标记 Marker 添加事件,并唤起信息窗体 InfoWindow

JS API 提供的 Map、点标记、矢量图形等实例均支持事件绑定,鼠标、触摸板操作均会触发相应的事件。我们通过给点标记绑定click()事件来添加信息窗体InfoWindow。

// 创建信息窗体
const infoWindow = new AMap.InfoWindow({ 
  isCustom: true,  // 使用自定义窗体
  content: '<div>HELLO,AMAP!</div>', // 信息窗体的内容可以是任意 html 片段
  offset: new AMap.Pixel(16, -45)
});
const onMarkerClick = function(e) {
  infoWindow.open(map, e.target.getPosition()); // 打开信息窗体
  // e.target 就是被点击的 Marker
} 

const marker = new AMap.Marker({
  position: [116.481181, 39.989792]
})
map.add(marker);
marker.on('click', onMarkerClick); // 绑定 click 事件

 

标签:js,API,窗体,AMap,key,Marker,JS,高德
From: https://www.cnblogs.com/dlx609/p/17306327.html

相关文章

  • 从 1 秒到 10 毫秒!在 APISIX 中减少 Prometheus 请求阻塞
    本文介绍了Prometheus插件造成长尾请求现象的原因,以及如何解决这个问题。作者屠正松,ApacheAPISIXPMCMember。原文链接现象在APISIX社区中,曾有部分用户陆续反馈一种神秘现象:部分请求延迟较长。具体表现为:当流量请求进入一个正常部署的APISIX集群时,偶尔会出现部分请......
  • API 网关日志的价值,你了解多少?
    本文介绍了API网关日志的价值,并以知名网关ApacheAPISIX为例,展示如何集成API网关日志。作者钱勇,API7.ai技术工程师,ApacheAPISIXCommitter。原文链接网关日志的价值在数字化时代,软件架构随着业务成长而变得越来越复杂,这给故障的发现和排查都带来了非常大的挑战,进一......
  • js复制内容到粘贴板
    copyOrderNo(orderNo){navigator.clipboard.writeText(orderNo).then(()=>{this.$message.success('已复制订单号')});},copyOrderNo(orderNo){varinput=document.createElement('input')//创......
  • 【学习笔记】JS+VUE
    JSJS教程HTML定义了网页的内容CSS描述了网页的布局JavaScript控制了网页的行为简介1、什么是JS?JavaScript是一种轻量级的编程语言。JavaScript是可插入HTML页面的编程代码。JavaScript插入HTML页面后,可由所有的现代浏览器执行。2、JS有哪些作用?直接写入H......
  • 直播平台源代码,js 时间戳转为日期格式
    直播平台源代码,js时间戳转为日期格式js把时间戳转为普通日记格式第一种 functiongetLocalTime(nS){     returnnewDate(parseInt(nS)*1000).toLocaleString().replace(/:\d{1,2}$/,'');   } ​第二种 functionadd0(m){returnm<10?'0'+m:m}func......
  • js检测页面关闭事件
    window.onbeforeunload=onbeforeunload_handler;window.onunload=onunload_handler;//页面关闭之前触发,在onunload事件之前触发,可以禁止onunload事件的触发functiononbeforeunload_handler(){varwarning="确认退出?";debugger......
  • 用quasar+vue3+组合式api 实现小米商城标题栏动画
    先来看一下小米商城标题栏动画:  小米商城标题栏动画主要特点:移入时二级菜单缓慢出现;移出时二级菜单缓慢消失;在一级菜单之间移动时,二级菜单内容直接切换,没有过渡效果。实现思路一、纯css实现(❌)首先肯定是考虑:hover,但是经过试验发现,:hover可以实现鼠标移入移出时的......
  • AI 绘画 API 超详细使用教程 - 附微信小程序接入代码
    写在前面【AI绘画/AI图像生成】已成为现下炙手可热的话题,AI大模型训练的成本高昂,算法研究时间周期较长,对于大多数人来说,自研一套算法模型还是非常困难的,因此AI绘画API就应运而生,直接调用AI绘画API就能轻松将先进的图文AI融入到我们的产品中,使用门槛是非常低的。 本......
  • 淘宝/天猫添加到购物车 API 接口返回值说明
       通过针对商品加购的分析,可以获取商品在市场的转化率,同时能够通过分析来提升商品的购买率,这一提取源数据也被叫做数据挖掘(DataMining),数据挖掘就是从大量的数据中,提取隐藏在其中的,事先不知道的、但潜在有用的信息的过程。数据挖掘的目标是建立一个决策模型,根据过去的行动......
  • ExtJS 轮播图UI组件(Carousel)
    ExtJS教程汇总:https://www.cnblogs.com/cqpanda/p/16328016.html转载请注明出处:https://www.cnblogs.com/cqpanda/p/17177307.html更新记录2023年4月11日发布。Carousel组件(MordenToolkit)基本使用{xtype:'carousel',width:500,height:300,item......