Leaflet 1.9 发布
v1.9 版本为自 2016 年以来 Leaflet 的第一个主要版本升级奠定了基础! 从那以后发生了很多变化,是时候让 Leaflet 与 Web 平台一起成长了。
在此版本之后,我们将会把 1.x 版本代码切出一个分支并持续进行维护,该分支主要用于关键的错误修复。虽然 2.0 版本 还很遥远,并且需要一些时间才能成型,但我们计划进行以下更改:
- 放弃对 Internet Explorer 的支持。 我们将不在支持 IE 浏览器,因为 IE 浏览器已经正式停止使用,是时候说再见了。在未来 Leaflet 将会针对 Firefox、Chrome、Edge 和 Safari 等浏览器进行重点支持。
- 拥抱现代 JavaScript。 为了保持向后兼容性,Leaflet 完全用 ES5 编写,这是旧版浏览器支持的 JavaScript 版本。因此,我们无法利用许多出色的 JavaScript 特性(例如标准化的类,而不得不依赖我们自己的实现)。通过采用更现代的 ECMAScript 标准版本,我们可以开始努力使 Leaflet 与现代 JavaScript 库的预期保持一致。
- 标准化模块。 当我们发布 Leaflet v1 时,JavaScript 世界的格局大不相同,充满了竞争的模块标准,例如 CommonJS、AMD 和 UMD。今天,ECMAScript modules 标准已经将 JavaScript 生态统一在一起。在未来,Leaflet 将仅使用单个模块化标准,这将大大降低了我们分布式代码的复杂性。
- 移除 Leaflet global。
作为使用 Leaflet 的开发人员,你可能对大写字母
L
非常熟悉。这是 Leaflet 的所有功能所在的 Leaflet 全局变量。为了允许编译器工具可以通过 tree-shaking 来更好地消除无用代码,我们正在删除这个全局变量。为了保持与旧插件的向后兼容性,我们将提供一个可以手动导入的 shim,以恢复此功能。
在这里查看完整的更新日志。
编辑: 已发布 v1.9.1 补丁 以解决与 Leaflet.markercluster 插件的兼容性问题。
Edit: v1.9.2 补丁 已经发布,由于与插件的许多兼容性问题,它恢复了 ESM 支持。
Edit: v1.9.3 补丁 已发布,解决了一些 BUG 和可访问性问题。
Edit: v1.9.4 补丁 已发布, 解决了一些 BUG。
Cheers,
The Leaflet team.