amap-jsapi-skill
高德地图 JSAPI v2.0 (WebGL) 开发技能。涵盖地图生命周期管理、强制安全配置、3D 视图控制、覆盖物绘制及 LBS 服务集成。
- License 许可
- MIT
- 最近更新
- 2026-04-06
- Stars
- ★ 2
- Forks
- 0
01 前言 Front Matter
- name
- amap-jsapi-skill
- license
- MIT
- version
- 1.1.0
- homepage
- https://lbs.amap.com
- metadata
- { "openclaw": { "requires": { "env": "AMAP_JSAPI_KEY", "bins": [ "node" ] }, "primaryEnv": "AMAP_JSAPI_KEY" } }
- description
- 高德地图 JSAPI v2.0 (WebGL) 开发技能。涵盖地图生命周期管理、强制安全配置、3D 视图控制、覆盖物绘制及 LBS 服务集成。
02 资源文件 35
- 参考文档_meta.json135 B
- 参考文档.clawhub/origin.json148 B
- 参考文档references/api/common.md34.4 KB
- 参考文档references/api/context-menu.md1.1 KB
- 参考文档references/api/controls.md8.7 KB
- 参考文档references/api/events.md2.3 KB
- 参考文档references/api/foundation.md5.5 KB
- 参考文档references/api/geocoder.md4.1 KB
- 参考文档references/api/geolocation.md5.1 KB
- 参考文档references/api/info-window.md2.7 KB
- 参考文档references/api/layers-custom.md19.9 KB
- 参考文档references/api/layers-official.md24.7 KB
- 参考文档references/api/layers-standard.md13.3 KB
- 参考文档references/api/map.md20.4 KB
- 参考文档references/api/marker.md44.5 KB
- 参考文档references/api/overlay-group.md4.3 KB
- 参考文档references/api/routing.md38.9 KB
- 参考文档references/api/search.md13.7 KB
- 参考文档references/api/services-other.md12.3 KB
- 参考文档references/api/services.md1.9 KB
- 参考文档references/api/tools.md9.6 KB
- 参考文档references/api/vector-graphics.md32.7 KB
- 参考文档references/context-menu.md1.5 KB
- 参考文档references/custom-layers.md6.0 KB
- 参考文档references/events.md4.3 KB
- 参考文档references/geocoder.md4.4 KB
- 参考文档references/info-window.md7.4 KB
- 参考文档references/layers.md1.8 KB
- 参考文档references/map-init.md6.5 KB
- 参考文档references/marker.md8.0 KB
- 参考文档references/routing.md15.0 KB
- 参考文档references/search.md2.6 KB
- 参考文档references/security.md5.3 KB
- 参考文档references/vector-graphics.md5.0 KB
- 参考文档references/view-control.md2.8 KB
03 SKILL.md 正文
高德地图 JSAPI v2.0 开发技能
本指南包含地图初始化、覆盖物、事件、图层等核心模块的 API 说明和代码示例,旨在帮助开发者快速集成高德地图并遵循正确的使用方式。
快速开始
1. 引入加载器
使用 script 标签加载 loader.js:
<script src="https://webapi.amap.com/loader.js"></script>
2. 安全密钥配置 (强制)
重要:自 v2.0 起,必须在加载地图前配置安全密钥,否则无法通过鉴权。详情及后端代理示例请参考 安全策略。
// 在调用 AMapLoader.load 前执行
window._AMapSecurityConfig = {
securityJsCode: '您的安全密钥', // 开发环境:明文设置
// serviceHost: 'https://your-proxy-domain/_AMapService', // 生产环境:建议使用代理转发
};
3. 初始化地图
import AMapLoader from '@amap/amap-jsapi-loader';
AMapLoader.load({
key: '您的Web端开发者Key', // 必填
version: '2.0', // 指定版本
plugins: ['AMap.Scale', 'AMap.ToolBar'] // 预加载插件
}).then((AMap) => {
const map = new AMap.Map('container', {
viewMode: '3D', // 开启3D视图
zoom: 11, // 初始缩放级别
center: [116.39, 39.90] // 初始中心点
});
map.addControl(new AMap.Scale());
}).catch(e => console.error(e));
场景示例
地图控制
- 生命周期:
references/map-init.md- 掌握load、Map实例创建及destroy销毁流程。 - 视图交互:
references/view-control.md- 控制zoom(缩放)、center(平移)、pitch(俯仰)、rotation(旋转)。
覆盖物绘制
- 点标记:
references/marker.md- 使用Marker(基础)、LabelMarker(海量避让) 标注位置。 - 矢量图形:
references/vector-graphics.md- 绘制Polyline(轨迹、线)、Polygon(区域、面)、Circle(范围、圆)。 - 信息展示:
references/info-window.md- 通过InfoWindow展示详细信息。 - 右键菜单:
references/context-menu.md- 自定义地图或覆盖物的右键交互。
图层管理
- 基础图层:
references/layers.md- 标准、卫星、路网及 3D 楼块图层。 - 自有数据:
references/custom-layers.md- 集成Canvas、WMS/WMTS,GLCustomLayer地图上叠加 Canvas、WMS图层、 Threejs图层。
服务与插件
- LBS 服务:
references/geocoder.md- 地理编码/逆地理编码(地址/坐标互转)。references/routing.md- 路径规划(驾车/步行/公交)。references/search.md- POI 搜索与输入提示。
- 事件系统:
references/events.md- 响应点击、拖拽、缩放等交互事件。
最佳实践
- 安全第一:生产环境务必使用代理服务器转发
serviceHost,避免securityJsCode泄露。 - 按需加载:仅在
plugins中声明需要的插件,减少首屏资源体积。 - 资源释放:组件卸载时务必调用
map.destroy(),防止 WebGL 上下文内存泄漏。
API Reference
JSAPI 文档分为以下几个类别:
Foundation Classes
LngLat / Bounds / Pixel / Size
Information Window
InfoWindow
Events
Event
Map
Map / MapsEvent
Official Layers
TileLayer / Traffic / Satellite / RoadNet / Buildings / DistrictLayer / IndoorMap
Standard Layers
WMS / WMTS / MapboxVectorTileLayer
Custom Layers
HeatMap / VectorLayer / LabelsLayer / CustomLayer / Flexible / ImageLayer / CanvasLayer / GLCustomLayer
Markers
Marker / Text / Icon / LabelMarker / ElasticMarker / MarkerCluster / MassMarks / MoveAnimation / AnimationCallback / EasingCallback
Context Menu
ContextMenu
Vector Graphics
Polygon / Polyline / BezierCurve / Circle / CircleMarker / Ellipse / Rectangle / GeoJSON
Overlay Groups
LayerGroup / OverlayGroup
Controls
Control / Scale / ToolBar / ControlBar / MapType / HawkEye
Tools
RangingTool / MouseTool / PolygonEditor / PolylineEditor / CircleEditor / BezierCurveEditor / EllipseEditor / RectangleEditor
Services
WebService / WebServiceCallback
Search
AutoComplete / AutoCompleteSearchCallback / PlaceSearch / searchCallback / CloudDataSearch / CloudDataSearchCallback
Geocoder
Geocoder / GeocoderCallback / ReGeocoderCallback / convertFrom
Routing
Driving / DrivingCallback / DrivingResult / DriveStepBasic / DriveStepDetail / TruckDriving / Walking / WalkingCallback / WalkingResult / Transfer / TransferCallback / TransferResult / Riding / RidingCallback / RidingResult / DragRoute / DragRouteTruck / GraspRoad / GraspRoadCallback
Other Services
DistrictSearch / Weather / WeatherLiveResult / WeatherForecastResult / StationSearch / LineSearch
Geolocation
Geolocation / GeolocationCallBack / GeolocationResult / CitySearch
Common Library
GeometryUtil / DomUtil / Browser / Util
使用 skills 必须遵循的铁律
- 校验生成代码可用性:生成代码后必须进行自我校验,确保代码语法正确、逻辑完整且可以正常运行,禁止输出未经验证的代码。
- 本地文件放置规范:所有生成的项目文件必须放置在 openclaw workspace 目录下的
amap-jsapi/文件夹中。文件名统一使用 kebab-case 命名(如map-init.html、layers-official.html)。
如何使用
- 如果有相近的“场景示例”那么去阅读场景示例,再阅读场景示例中的涉及的类的api文档。再结合描述/场景示例/api 去完成任务。
- 在最终的完成任务前,检查用的api用法是否符合文档。
04 同仓库更多 Skills
supabase-postgres-best-practices
Postgres performance optimization and best practices from Supabase. Use this skill when writing, reviewing, or optimizing Postgres queries, schema designs, or database configurations.
seo-content-writer
Use when the user asks to "write SEO content", "create a blog post", "write an article", "content writing", "draft optimized content", "write me an article", "create a blog post about", "help me write SEO content", or "draft content for". Creates high-quality, SEO-optimized content that ranks in search engines. Applies on-page SEO best practices, keyword optimization, and content structure for maximum visibility and engagement. For AI citation optimization, see geo-content-optimizer. For updating existing content, see content-refresher.
pptx-generator
Generate, edit, and read PowerPoint presentations. Create from scratch with PptxGenJS (cover, TOC, content, section divider, summary slides), edit existing PPTX via XML workflows, or extract text with markitdown. Triggers: PPT, PPTX, PowerPoint, presentation, slide, deck, slides.
minimax-xlsx
Open, create, read, analyze, edit, or validate Excel/spreadsheet files (.xlsx, .xlsm, .csv, .tsv). Use when the user asks to create, build, modify, analyze, read, validate, or format any Excel spreadsheet, financial model, pivot table, or tabular data file. Covers: creating new xlsx from scratch, reading and analyzing existing files, editing existing xlsx with zero format loss, formula recalculation and validation, and applying professional financial formatting standards. Triggers on 'spreadsheet', 'Excel', '.xlsx', '.csv', 'pivot table', 'financial model', 'formula', or any request to produce tabular data in Excel format.
minimax-pdf
Use this skill when visual quality and design identity matter for a PDF. CREATE (generate from scratch): "make a PDF", "generate a report", "write a proposal", "create a resume", "beautiful PDF", "professional document", "cover page", "polished PDF", "client-ready document". FILL (complete form fields): "fill in the form", "fill out this PDF", "complete the form fields", "write values into PDF", "what fields does this PDF have". REFORMAT (apply design to an existing doc): "reformat this document", "apply our style", "convert this Markdown/text to PDF", "make this doc look good", "re-style this PDF". This skill uses a token-based design system: color, typography, and spacing are derived from the document type and flow through every page. The output is print-ready. Prefer this skill when appearance matters, not just when any PDF output is needed.
minimax-docx
Professional DOCX document creation, editing, and formatting using OpenXML SDK (.NET). Three pipelines: (A) create new documents from scratch, (B) fill/edit content in existing documents, (C) apply template formatting with XSD validation gate-check. MUST use this skill whenever the user wants to produce, modify, or format a Word document — including when they say "write a report", "draft a proposal", "make a contract", "fill in this form", "reformat to match this template", or any task whose final output is a .docx file. Even if the user doesn't mention "docx" explicitly, if the task implies a printable/formal document, use this skill.