<br /><br />
<p align="center">
<a href="https://github.com/uiwjs/react-amap">
<img src="https://uiwjs.github.io/react-amap/logo.svg" height="80px" alt="高德地图 React 组件 logo" />
</a>
</p>
<h3 align="center">高德地图 React 组件</h3>
<p align="center">
<a href="https://jaywcjlove.github.io/#/sponsor" target="__blank">
<img alt="Buy me a coffee" src="https://img.shields.io/badge/Buy%20me%20a%20coffee-048754?logo=buymeacoffee">
</a>
<a href="https://github.com/uiwjs/react-amap/actions">
<img src="https://github.com/uiwjs/react-amap/actions/workflows/ci.yml/badge.svg" alt="Build & Deploy">
</a>
<a href="https://www.npmjs.com/package/@uiw/react-amap">
<img src="https://img.shields.io/npm/dm/@uiw/react-amap.svg?style=flat" alt="Downloads">
</a>
<a href="https://uiwjs.github.io/npm-unpkg/#/pkg/@uiw/react-amap/file/README.md">
<img src="https://img.shields.io/badge/Open%20in-unpkg-blue" alt="Open in unpkg">
</a>
<a href="https://www.npmjs.com/package/@uiw/react-amap">
<img src="https://img.shields.io/npm/v/@uiw/react-amap.svg" alt="npm version">
</a>
<a href="https://gitee.com/uiw/react-amap">
<img src="https://jaywcjlove.github.io/sb/ico/gitee.svg" alt="Gitee Repo">
</a>
</p>
这是一个基于 React 封装的高德地图组件,帮助你轻松的接入地图到 React 项目中。除了必须引用的 APILoader/Map 组件外,我们目前提供了最常用的地图组件,能满足大部分简单的业务场景;如果你有更复杂的需求,或者觉得默认提供的组件功能不够,可以使用 Map 组件返回的地图实例,完全自定义一个地图组件,然后根据高德原生 API 做高德允许你做的一切事情。
文档实例预览: [Github Web](https://uiwjs.github.io/react-amap/) | [Gitee Web](https://uiw.gitee.io/react-amap)
### 特性
- ♻️ 自动加载高德地图 SDK(通过创建 Script 标签的形式加载),包括第三方 SDK。
- 📚 使用 Typescript 编写,集成高德地图 SDK [@type](https://github.com/uiwjs/react-amap/tree/master/packages/types) 声明文件(包括中文注释)。
- ⚛️ 支持 React Hook 新增特性(需要 React 16.8+)。
- 💝 不依赖任何第三方组件。
- 📦 拆分成多个包,按需使用包。
### 安装
> 不依赖 [`uiw`](https://github.com/uiwjs/uiw) 组件库
```bash
# 集成了所有依赖包
npm install @uiw/react-amap --save
# 或者按需安装包
npm install @uiw/react-amap-map @uiw/react-amap-api-loader --save
```
`v4` 升级到 `v5`,`APILoader` 主要是对 `APILoader` 做了升级,~~`akay`~~ => `akey`
```diff
<APILoader
- akay
- protocol
- hostAndPath
- callbackName
- plugin
- disableScripts
+ akey
+ plugins
+ AMapUI
+ Loca
>
<Map style={{ height: 100 }} />
</APILoader>
```
### 使用
[![Open in CodeSandbox](https://img.shields.io/badge/Open%20in-CodeSandbox-blue?logo=codesandbox)](https://codesandbox.io/embed/react-amap-example-y0n6c-y0n6c?fontsize=14&hidenavigation=1&theme=dark)
```jsx mdx:preview
import ReactDOM from 'react-dom';
import React, { useEffect, useRef, Fragment } from 'react';
import { Map, APILoader, ScaleControl, ToolBarControl, ControlBarControl, Geolocation } from '@uiw/react-amap';
const Demo = () => (
<div>
<Map style={{ height: 300 }}>
<ScaleControl offset={[16, 30]} position="LB" />
<ToolBarControl offset={[16, 10]} position="RB" />
<ControlBarControl offset={[16, 180]} position="RB" />
<Geolocation
maximumAge={100000}
borderRadius="5px"
position="RB"
offset={[16, 80]}
zoomToAccuracy={true}
showCircle={true}
/>
</Map>
<Map style={{ height: 300 }}>
{({ AMap, map, container }) => {
return;
}}
</Map>
</div>
);
const Mount = () => (
<APILoader version="2.0.5" akey="a7a90e05a37d3f6bf76d4a9032fc9129">
<Demo />
</APILoader>
)
export default Mount
```
### 容器组件
Package | Bundle size(gzip) | Version/unpkg
----- | ----- | ----
[`@uiw/react-amap`](https://uiwjs.github.io/react-amap/) 集成所有包 | [![bundle size](https://img.shields.io/bundlephobia/min/@uiw/react-amap?color=3789D6&label=)](https://bundlephobia.com/package/@uiw/react-amap) [![bundle size(gzip)](https://img.shields.io/bundlephobia/minzip/@uiw/react-amap?color=green&label=)](https://bundlephobia.com/package/@uiw/react-amap) | [![npm version](https://img.shields.io/npm/v/@uiw/react-amap.svg)](https://www.npmjs.com/package/@uiw/react-amap) [![Open in unpkg](https://img.shields.io/badge/Open%20in-unpkg-blue)](https://uiwjs.github.io/npm-unpkg/#/pkg/@uiw/react-amap/file/README.md)
[`@uiw/react-amap-api-loader`](https://uiwjs.github.io/react-amap/#/api-loader) 加载 SDK (必须) | [![bundle size](https://img.shields.io/bundlephobia/min/@uiw/react-amap-api-loader?color=3789D6&label=)](https://bundlephobia.com/package/@uiw/react-amap-api-loader) [![bundle size(gzip)](https://img.shields.io/bundlephobia/minzip/@uiw/react-amap-api-loader?color=green&label=)](https://bundlephobia.com/package/@uiw/react-amap-api-loader) | [![npm version](https://img.shields.io/npm/v/@uiw/react-amap-api-loader.svg)](https://www.npmjs.com/package/@uiw/react-amap-api-loader) [![Open in unpkg](https://img.shields.io/badge/Open%20in-unpkg-blue)](https://uiwjs.github.io/npm-unpkg/#/pkg/@uiw/react-amap-api-loader/file/README.md)
[`@uiw/react-amap-map`](https://uiwjs.github.io/react-amap/#/map) 加载地图(容器) | [![bundle size](https://img.shields.io/bundlephobia/min/@uiw/react-amap-map?color=3789D6&label=)](https://bundlephobia.com/package/@uiw/react-amap-map) [![bundle size(gzip)](https://img.shields.io/bundlephobia/minzip/@uiw/react-amap-map?color=green&label=)](https://bundlephobia.com/package/@uiw/react-amap-map) | [![npm version](https://img.shields.io/npm/v/@uiw/react-amap-map.svg)](https://www.npmjs.com/package/@uiw/react-amap-map) [![Open in unpkg](https://img.shields.io/badge/Open%20in-unpkg-blue)](https://uiwjs.github.io/npm-unpkg/#/pkg/@uiw/react-amap-map/file/README.md)
### 控件组件
Package | Bundle size(gzip) | Version/unpkg
----- | ----- | ----
[`@uiw/react-amap-scale-control`](https://uiwjs.github.io/react-amap/#/scale-control) | [![bundle size](https://img.shields.io/bundlephobia/min/@uiw/react-amap-scale-control?color=3789D6&label=)](https://bundlephobia.com/package/@uiw/react-amap-scale-control) [![bundle size(gzip)](https://img.shields.io/bundlephobia/minzip/@uiw/react-amap-scale-control?color=green&label=)](https://bundlephobia.com/package/@uiw/react-amap-scale-control) | [![npm version](https://img.shields.io/npm/v/@uiw/react-amap-scale-control.svg)](https://www.npmjs.com/package/@uiw/react-amap-scale-control) [![Open in unpkg](https://img.shields.io/badge/Open%20in-unpkg-blue)](https://uiwjs.github.io/npm-unpkg/#/pkg/@uiw/react-amap-scale-control/file/README.md)
[`@uiw/react-amap-control-bar-control`](https://uiwjs.github.io/react-amap/#/control-bar-control) | [![bundle size](https://img.shields.io/bundlephobia/min/@uiw/react-amap-control-bar-control?color=3789D6&label=)](https://bundlephobia.com/package/@uiw/react-amap-control-bar-control) [![bundle size(gzip)](https://img.shields.io/bundlephobia/minzip/@uiw/react-amap-control-bar-control?color=green&label=)](https://bundlephobia.com/package/@uiw/react-amap-control-bar-control) | [![npm version](https://img.shields.io/npm/v/@uiw/react-amap-control-bar-control.svg)](https://www.npmjs.com/package/@uiw/react-amap-control-bar-control) [![Open in unpkg](https://img.shields.io/badge/Open%20in-unpkg-blue)](https://uiwjs.github.io/npm-unpkg/#/pkg/@uiw/react-amap-control-bar-control/file/README.md)
[`@uiw/react-amap-hawk-eye-control`](https://uiwjs.github.io/react-amap/#/hawk-eye-control) | [![bundle size](https://img.shields.io/bundlephobia/min/@uiw/react-amap-hawk-eye-control?color=3789D6&label=)](https://bundlephobia.com/package/@uiw/react-amap-hawk-eye-control) [![bundle size(gzip)]
没有合适的资源?快使用搜索试试~ 我知道了~
基于 React 封装的高德地图组件帮助你轻松的接入地图到 React 项目中
共234个文件
tsx:96个
json:70个
md:33个
1.该资源内容由用户上传,如若侵权请联系客服进行举报
2.虚拟产品一经售出概不退款(资源遇到问题,请及时私信上传者)
2.虚拟产品一经售出概不退款(资源遇到问题,请及时私信上传者)
版权申诉
0 下载量 15 浏览量
2024-04-13
09:01:05
上传
评论
收藏 244KB ZIP 举报
温馨提示
这是一个基于 React 封装的高德地图组件,旨在帮助用户轻松将地图功能集成到其 React 项目中。除了必须引用的 APILoader/Map 组件外,我们还提供了最常用的地图组件,以满足大多数简单业务场景的需求。如果您有更复杂的需求,或者觉得默认提供的组件功能不够,可以利用 Map 组件返回的地图实例,完全自定义一个地图组件,并根据高德原生 API 进行扩展,实现高德地图允许的所有功能。该组件自动加载高德地图 SDK,通过创建 Script 标签的方式加载,包括第三方 SDK。它使用 Typescript 编写,集成了高德地图 SDK 的 @type 声明文件,其中包括中文注释。同时,它支持 React Hook 的新增特性,要求 React 版本在16.8以上。该组件不依赖任何第三方组件,且已经拆分成多个包,可以按需使用。总之,这个基于 React 封装的高德地图组件具有以下特点:自动加载高德地图 SDK,提供常用地图组件,支持自定义扩展,使用 Typescript 编写,集成 @type 声明文件,支持 React Hook 特性,无第三方组件依赖,按需使用包。希望这个组件能够
资源推荐
资源详情
资源评论
收起资源包目录
基于 React 封装的高德地图组件帮助你轻松的接入地图到 React 项目中 (234个子文件)
index.css 84B
index.css 84B
.gitignore 179B
bundle.html 2KB
index.html 711B
favicon.ico 17KB
package.json 6KB
package.json 3KB
package.json 2KB
package.json 1KB
package.json 1KB
package.json 1KB
package.json 1KB
package.json 1KB
package.json 1KB
package.json 1KB
package.json 1KB
package.json 1KB
package.json 1KB
package.json 1KB
package.json 1KB
package.json 1KB
package.json 1KB
package.json 1KB
package.json 1KB
package.json 1KB
package.json 1KB
package.json 1KB
package.json 1021B
package.json 1007B
package.json 1006B
package.json 997B
package.json 992B
package.json 991B
package.json 990B
package.json 971B
package.json 957B
package.json 943B
package.json 832B
package.json 825B
tsconfig.json 602B
tsconfig.json 261B
tsconfig.json 145B
tsconfig.json 145B
tsconfig.json 145B
tsconfig.json 145B
tsconfig.json 145B
tsconfig.json 145B
tsconfig.json 145B
tsconfig.json 145B
tsconfig.json 145B
tsconfig.json 145B
tsconfig.json 145B
tsconfig.json 145B
tsconfig.json 145B
tsconfig.json 145B
tsconfig.json 145B
tsconfig.json 145B
tsconfig.json 145B
tsconfig.json 145B
tsconfig.json 145B
tsconfig.json 145B
tsconfig.json 145B
tsconfig.json 145B
tsconfig.json 145B
tsconfig.json 145B
tsconfig.json 145B
tsconfig.json 145B
tsconfig.json 145B
tsconfig.json 145B
tsconfig.json 145B
tsconfig.json 145B
tsconfig.json 145B
tsconfig.json 145B
renovate.json 140B
lerna.json 67B
index.less 287B
LICENSE 1KB
README.md 28KB
README.md 13KB
README.md 11KB
README.md 10KB
README.md 10KB
README.md 7KB
README.md 7KB
README.md 7KB
README.md 6KB
README.md 6KB
README.md 6KB
README.md 5KB
README.md 5KB
README.md 4KB
README.md 4KB
README.md 4KB
README.md 4KB
README.md 4KB
README.md 4KB
README.md 4KB
README.md 3KB
README.md 3KB
共 234 条
- 1
- 2
- 3
资源评论
传奇开心果编程
- 粉丝: 1w+
- 资源: 454
上传资源 快速赚钱
- 我的内容管理 展开
- 我的资源 快来上传第一个资源
- 我的收益 登录查看自己的收益
- 我的积分 登录查看自己的积分
- 我的C币 登录后查看C币余额
- 我的收藏
- 我的下载
- 下载帮助
最新资源
资源上传下载、课程学习等过程中有任何疑问或建议,欢迎提出宝贵意见哦~我们会及时处理!
点击此处反馈
安全验证
文档复制为VIP权益,开通VIP直接复制
信息提交成功