react引入高德地图并初始化卫星地图

react引入高德地图并初始化卫星地图

1.安装依赖

shell 复制代码
yarn add react-amap @amap/amap-jsapi-loader

2.初始化地图

js 复制代码
import AMapLoader from "@amap/amap-jsapi-loader";
import { FC, useEffect, useRef, useState } from "react";

const HomeRight = () => {
  const mymap: any = useRef(null);

  useEffect(()=>{
    AMapLoader.load({
      key: "你的key", // 申请好的Web端开发者Key,首次调用 load 时必填
      version: "2.0", // 指定要加载的 JSAPI 的版本,缺省时默认为 1.4.15
      plugins: [], // 需要使用的的插件列表,如比例尺'AMap.Scale'等
    })
      .then(initMap)
      .catch((e: any) => {
        console.log(e);
      });

    return () => {
      mymap.current.destroy();
    };
  },[])

  /**
   * 加载插件并初始化地图
   */
  const initMap = () => {
    // 1.加载插件
    AMap.plugin(
      [
        "AMap.ToolBar",
        "AMap.Scale",
        "AMap.HawkEye",
        "AMap.ControlBar",
        "AMap.MapType",
        "AMap.Geolocation",
        "AMap.ContextMenu",
        "AMap.AutoComplete",
        "AMap.PlaceSearch",
      ],
      function () {
        // 创建卫星图图层对象
        const satelliteLayer = new AMap.TileLayer.Satellite();
        // 2.初始化地图实例
        const map = new AMap.Map("myMap", {
          resizeEnable: true,
          expandZoomRange: true, // 放大缩小限制
          zooms: [4, 20], // 放大缩小范围
          center: [116.397428, 39.90923], // 中心点
          layers: [satelliteLayer], // 卫星图类型
          zoom: 5, // 默认缩放级别
        });
        mymap.current = map;
      }
    );
  };

  return (
    <div id="myMap" style={{ width: "100%", height: "100%" }}></div>
  )
};
相关推荐
放下华子我只抽RuiKe54 小时前
React 从入门到生产(四):自定义 Hook
前端·javascript·人工智能·深度学习·react.js·自然语言处理·前端框架
XinZong5 小时前
OpenClaw 实现双重心跳(Heartbeat)+ clawreach虾聊项目实现
javascript
还有多久拿退休金6 小时前
一张栈的图,治好你面试答不出 script 阻塞的病
前端·javascript
zithern_juejin7 小时前
原型与原型链
javascript
008爬虫实战录9 小时前
【码上爬】 题十二:如来神掌 困难, JSVMP加密,使用代理补环境
前端·javascript·node.js
threelab9 小时前
Three.js 数学函数着色器 | 三维可视化 / AI 提示词
javascript·人工智能·着色器
ZC跨境爬虫10 小时前
跟着 MDN 学CSS day_3:(为一个传记页面添加样式)
前端·javascript·css·ui·音视频·html5
夜雪闻竹10 小时前
sql.js WASM 实战:浏览器里跑 SQLite
javascript·sql·wasm
爱喝铁观音的谷力景辉11 小时前
在Cesium中实现带箭头方向路线样式的技术详解
javascript·cesium
Qhappy11 小时前
AI逆向实战:从零还原某航空App的AES加密
javascript·后端