一、前端高德地图注册、项目中引入、渲染标记(Marker)and覆盖物(Circle)

简介: 文章介绍了如何在前端项目中注册并使用高德地图API,包括注册高德开放平台账号、引入高德地图到项目、以及如何在地图上渲染标记(Marker)和覆盖物(Circle)。

首先说明一下,下面的流程只是个人摸索and看文档梳理出来的,并不作为完全正确的流程。

首先,注册 高德开放平台

没有注册的可以点击右上角点击注册;
在这里插入图片描述
我们点个人的就ok;
在这里插入图片描述
信息完善之后我们到控制台,点击 应用管理 --> 我的应用 --> 创建新应用即可;
在这里插入图片描述
输入Key名称和服务平台(我这里选择的是 web段JS API )就可以看到生成了一个列表,其中Key列就是我们需要用到的。

其次,项目中使用

我们直接使用第三方的包来实现引入;

npm  i @amap/amap-jsapi-loader

然后就是我们在项目中的使用啦;

import AMapLoader from '@amap/amap-jsapi-loader';

页面代码:


import React, {
    Component } from 'react';
import AMapLoader from '@amap/amap-jsapi-loader';
import '../index.scss'
class  MapComponent extends Component{
   
    constructor(){
   
        super();      
        this.map ={
   };
    }
    // 2.dom渲染成功后进行map对象的创建
    componentDidMount(){
   
        AMapLoader.reset()  //需要把这个reset一下
        AMapLoader.load({
   
            key:"",   // 申请好的Web端开发者Key,首次调用 load 时必填
            version:"2.0",              // 指定要加载的 JSAPI 的版本,缺省时默认为 1.4.15
            plugins:[''],               // 需要使用的的插件列表,如比例尺'AMap.Scale'等
        }).then((AMap)=>{
   
            console.log(AMap,'AMap')
            this.map = new AMap.Map("container111",{
    //设置地图容器id
                // viewMode:"3D",         //是否为3D地图模式
                zoom: 10, //初始化地图级别
                center: [121.487899486,31.24916171 ] //初始化地图中心点位置-重庆市
            });
            var marker1 = new AMap.Marker({
   
                icon: "https://webapi.amap.com/theme/v1.3/markers/n/mark_b.png", //在线图标
                position: [121.487899486,31.24916171],
                title:'aaaaaa',
                zoom:999
            });
            var marker2 = new AMap.Marker({
   
                icon: "https://webapi.amap.com/theme/v1.3/markers/n/mark_b.png",
                position: [121.287899486,31.34916171],
                title:'aaaaaa',
                zoom:999
            });
            const content = `<div style="width:auto">EU126,租凭<br/>XX.XX MW</div>`
            marker1.setLabel({
   
                content:content,
                offset:new AMap.Pixel(-20,36)
            })
            marker2.setLabel({
   
                content:content,
                offset:new AMap.Pixel(-20,36)
            })
            var circle = new AMap.Circle({
   
                center: new AMap.LngLat("121.487899486", "31.24916171"), // 圆心位置
                radius: 10000,  //半径
                strokeColor: "#F33",  //线颜色
                strokeOpacity: 1,  //线透明度
                strokeWeight: 3,  //线粗细度
                fillColor: "#ee2200",  //填充颜色
                fillOpacity: 0.35 //填充透明度
            });
            this.map.add([marker1,marker2,circle]);
            // this.map.add(marker);
        }).catch(e=>{
   
            console.log(e);
        })
    }
    render(){
   
        // 1.初始化创建地图容器,div标签作为地图容器,同时为该div指定id属性;
        return (
              <div id="container111" className="map"  > 
              </div>
          );
    }
}
//导出地图组建类
export default MapComponent;

要注意的是:一定要给其设置宽和高,没有高也是显示不出来的。
页面效果为:
在这里插入图片描述

上面的代码实现了两个Marker和一个Circle;
当然这篇只是简单记录一下初次使用,另外献上官方文档连接:
地图 JS API 准备工作
覆盖物的添加和移除
点标记
我们想要实现的基本都能在官方文档上找到对应的效果,主打还是要看人家的官方文档。

目录
相关文章
|
1天前
|
前端开发 JavaScript 定位技术
三、前端高德地图、测量两个点之前的距离
文章介绍了如何在前端使用高德地图API实现测量两个点之间的距离,包括开启和关闭测量工具的方法,以及如何清除地图上的测量点、连线和文字。
7 1
三、前端高德地图、测量两个点之前的距离
|
15天前
|
前端开发 数据安全/隐私保护
【前端web入门第二天】03 表单-下拉菜单 文本域 label标签 按钮 【附注册信息综合案例】
本文档详细介绍了HTML表单的多种元素及其用法,包括下拉菜单(`&lt;select&gt;` 和 `&lt;option&gt;`)、文本域(`&lt;textarea&gt;`)、标签解释(`&lt;label&gt;`)、各类按钮(`&lt;button&gt;`)及表单重置功能、无语义布局标签(`&lt;div&gt;` 和 `&lt;span&gt;`)以及字符实体的应用。此外,还提供了一个完整的注册信息表单案例,涵盖个人信息、教育经历和工作经历等部分,展示了如何综合运用上述元素构建实用的表单。
【前端web入门第二天】03 表单-下拉菜单 文本域 label标签 按钮 【附注册信息综合案例】
|
1天前
|
前端开发 定位技术 API
二、前端高德地图、渲染标记(Marker)引入自定义icon,手动设置zoom
文章介绍了如何在前端使用高德地图API渲染标记(Marker),并引入自定义图标,同时展示了如何手动设置地图的缩放级别。
9 1
|
26天前
|
API Java 数据库连接
从平凡到卓越:Hibernate Criteria API 让你的数据库查询瞬间高大上,彻底告别复杂SQL!
【8月更文挑战第31天】构建复杂查询是数据库应用开发中的常见需求。Hibernate 的 Criteria API 以其强大和灵活的特点,允许开发者以面向对象的方式构建查询逻辑,同时具备 SQL 的表达力。本文将介绍 Criteria API 的基本用法并通过示例展示其实际应用。此 API 通过 API 构建查询条件而非直接编写查询语句,提高了代码的可读性和安全性。无论是简单的条件过滤还是复杂的分页和连接查询,Criteria API 均能胜任,有助于提升开发效率和应用的健壮性。
58 0
|
26天前
|
开发者 C# C++
揭秘:如何轻松驾驭Uno Platform,用C#和XAML打造跨平台神器——一步步打造你的高性能WebAssembly应用!
【8月更文挑战第31天】Uno Platform 是一个跨平台应用程序框架,支持使用 C# 和 XAML 创建多平台应用,包括 Web。通过编译为 WebAssembly,Uno Platform 可实现在 Web 上运行高性能、接近原生体验的应用。本文介绍如何构建高效的 WebAssembly 应用:首先确保安装最新版本的 Visual Studio 或 VS Code 并配置 Uno Platform 开发环境;接着创建新的 Uno Platform 项目;然后通过安装工具链并使用 Uno WebAssembly CLI 编译应用;最后添加示例代码并测试应用。
43 0
|
26天前
|
前端开发 开发者 Apache
揭秘Apache Wicket项目结构:如何打造Web应用的钢铁长城,告别混乱代码!
【8月更文挑战第31天】Apache Wicket凭借其组件化设计深受Java Web开发者青睐。本文详细解析了Wicket项目结构,帮助你构建可维护的大型Web应用。通过示例展示了如何使用Maven管理依赖,并组织页面、组件及业务逻辑,确保代码清晰易懂。Wicket提供的页面继承、组件重用等功能进一步增强了项目的可维护性和扩展性。掌握这些技巧,能够显著提升开发效率,构建更稳定的Web应用。
73 0
|
26天前
|
前端开发 程序员 API
从后端到前端的无缝切换:一名C#程序员如何借助Blazor技术实现全栈开发的梦想——深入解析Blazor框架下的Web应用构建之旅,附带实战代码示例与项目配置技巧揭露
【8月更文挑战第31天】本文通过详细步骤和代码示例,介绍了如何利用 Blazor 构建全栈 Web 应用。从创建新的 Blazor WebAssembly 项目开始,逐步演示了前后端分离的服务架构设计,包括 REST API 的设置及 Blazor 组件的数据展示。通过整合前后端逻辑,C# 开发者能够在统一环境中实现高效且一致的全栈开发。Blazor 的引入不仅简化了 Web 应用开发流程,还为习惯于后端开发的程序员提供了进入前端世界的桥梁。
43 0
|
13天前
|
SpringCloudAlibaba JavaScript 前端开发
谷粒商城笔记+踩坑(2)——分布式组件、前端基础,nacos+feign+gateway+ES6+vue脚手架
分布式组件、nacos注册配置中心、openfegin远程调用、网关gateway、ES6脚本语言规范、vue、elementUI
谷粒商城笔记+踩坑(2)——分布式组件、前端基础,nacos+feign+gateway+ES6+vue脚手架
|
1月前
|
存储 前端开发 JavaScript
前端语言串讲 | 青训营笔记
前端语言串讲 | 青训营笔记
24 0
|
3月前
|
JSON 前端开发 JavaScript
前端Ajax、Axios和Fetch的用法和区别笔记
前端Ajax、Axios和Fetch的用法和区别笔记
71 2