工具简介
概览
GeoScene Maps SDK for JavaScript 可作为 AMD 和 ES 模块使用。
API 的模块将功能划分为逻辑子集。AMD 模块实现异步模块定义格式,它们使用 require()
方法和第三方脚本加载器来加载模块及其依赖项。ES 模块,也称为 ECMAScript 模块或简称为 ESM,是一种官方的标准化模块系统,通过 import
语句与所有现代浏览器原生兼容。ES 模块不需要单独的脚本加载器。
我应迁移到 ES 模块吗?
如果您在没有 JavaScript 框架或本地构建工具的情况下使用 AMD CDN,则无需迁移。AMD 模块将在未来版本中推出。
ES 模块和 AMD 模块具有相同的 API 功能。例如,以下代码片段提供了等效的功能。
ES 模块
AMD
比较 AMD 和 ES 模块
以下是使用 AMD 和 ES 模块的一些常见原因。
CDN (AMD) | CDN (ESM) | ESM 本地构建 | AMD 本地构建 | |
---|---|---|---|---|
无需安装、配置或本地构建 | X | X | ||
通过 CDN 缓存实现快速下载性能 | X | |||
仅用于测试 | X | |||
通过 npm 轻松安装 | X | |||
与大多数现代框架和构建工具无缝集成 | X | |||
将 API 4.17 或更早版本与框架或构建工具一起使用 | X | |||
使用 Dojo 1 或 RequireJS | X |
CDN (AMD)
使用 AMD CDN 的优势包括:
- 快速下载和高度优化的缓存。
- 无需安装或配置。
- 将 API 自动更新到最新版本。
CDN (ESM)
ES 模块 CDN 仅用于测试,并未针对性能进行优化。要获得 ES 模块的最佳性能,请在本地构建它们。
ES 模块本地构建
在本地构建 ES 模块的优点包括:
- 与主流浏览器本地集成的标准化模块系统。
- 不需要单独的帮助程序或模块加载程序库。
- 与大多数现代框架和构建工具无缝集成。
- 使用某些第三方库时没有多重定义问题。
- 为 node.js 部署提供服务器端功能,例如
geometry
。Engine
缺点包括:
- API 更新需要安装新版本并重新构建应用程序。