@asymmetrik/ngx-leaflet-markercluster

中文文档
18.0.0发布于 2024/06/02MITTypeScriptES Module近 30 天下载 1.4万

Angular.io components for the Leaflet Markercluster plugin

此软件包已被标记为弃用

Packaged moved to @bluehalo/ngx-leaflet-markercluster for all future versions, including minor and patch releases.

原始使用文档
文档目录7 节
  1. Table of Contents
  2. Install
  3. Usage
  4. leafletMarkerCluster
  5. Getting a reference to the MarkerCluster Layer
  6. Contribute
  7. License

@bluehalo/ngx-leaflet-markercluster

Build Status

Extension to the @bluehalo/ngx-leaflet package for Angular.io Provides leaflet.markercluster integration into Angular.io projects. Compatible with Leaflet v1.x and leaflet.markercluster v1.x Supports Angular v17 and Ivy, and use in Angular-CLI based projects

Table of Contents

Install

Install the package and its peer dependencies via npm:

npm install leaflet @bluehalo/ngx-leaflet
npm install leaflet.markercluster @bluehalo/ngx-leaflet-markercluster

If you intend to use this library in a typescript project (utilizing the typings), you will need to also install the leaflet typings via npm:

npm install @types/leaflet @types/leaflet.markercluster

Usage

This plugin is used with the Angular.io Leaflet plugin.

The first step is to follow the instructions to get @bluehalo/ngx-leaflet working. Next, follow a similar process to install and configure this plugin. Generally, the steps are:

  • Install this package and its dependencies (see above).
  • Import the leaflet.markercluster stylesheet (i.e., node_modules/leaflet.markercluster/dist/MarkerCluster.Default.css and .../MarkerCluster.css for animations).
    • Follow the same process as documented in @bluehalo/ngx-leaflet.
  • Import the LeafletMarkerClusterModule into your Angular application module and local module (if applicable).
  • Create and configure a map (see docs below and/or demo)

To create a map, use the leaflet attribute directive. This directive must appear first. You must specify an initial zoom/center and set of layers either via leafletOptions or by binding to leafletZoom, leafletCenter, and leafletLayers.

<div style="height: 400px;"
     leaflet
     [leafletOptions]="options"
     [leafletMarkerCluster]="markerClusterData"
     [leafletMarkerClusterOptions]="markerClusterOptions">
</div>

Finally, to initialize and configure the leaflet markercluster plugin, use the following attribute directives:

leafletMarkerCluster

This attribute is an attribute directive that initiates the marker cluster plugin and binds the marker data.

leafletMarkerClusterOptions

Input binding for the options to be passed directly to the marker cluster plugin upon creation. These options are only currently processed at creation time.

The options object is passed through to the leaflet.markercluster object. Therefore, you can reference their documentation for help configuring this plugin.

Getting a reference to the MarkerCluster Layer

There is an optional output event emitter that will expose the markercluster group being used by the plugin called leafletMarkerClusterReady. See the following example:

<div style="height: 400px;"
     leaflet
     [leafletOptions]="options"
     [leafletMarkerCluster]="markerClusterData"
     [leafletMarkerClusterOptions]="markerClusterOptions"
     (leafletMarkerClusterReady)="markerClusterReady($event)">
</div>
markerClusterReady(markerCluster: L.MarkerClusterGroup) {
    // Do stuff with group
}

Contribute

PRs accepted. If you are part of BlueHalo, please make contributions on feature branches off of the develop branch. If you are outside of BlueHalo, please fork our repo to make contributions.

License

See LICENSE in repository for details.

版本与发布记录

@asymmetrik/ngx-leaflet-markercluster 共发布 19 个版本,首次发布于 2017/08/29;过去 12 个月发布了 0 个版本。

版本发布日期距今
18.0.0latest2024/06/022 年前
17.0.02023/11/122 年前
16.0.02023/06/053 年前
15.0.02022/12/163 年前
14.0.12022/07/274 年前
14.0.02022/07/064 年前

关于 @asymmetrik/ngx-leaflet-markercluster 的常见问题

@asymmetrik/ngx-leaflet-markercluster 是什么?

Angular.io components for the Leaflet Markercluster plugin注意:该包已被作者标记为弃用——Packaged moved to @bluehalo/ngx-leaflet-markercluster for all future versions, including minor and patch releases.

如何安装 @asymmetrik/ngx-leaflet-markercluster?

在项目目录运行 npm install @asymmetrik/ngx-leaflet-markercluster,或使用 pnpm add / yarn add / bun add。它还需要宿主项目提供 peer 依赖:leaflet(1)、@angular/core(18)、@angular/common(18)、@bluehalo/ngx-leaflet(18)、leaflet.markercluster(1)。npm 7 及以上与 pnpm 8 及以上默认会自动安装必需的 peer 依赖,Yarn 需要手动安装。

@asymmetrik/ngx-leaflet-markercluster 支持 TypeScript 吗?

支持。包内自带 TypeScript 类型声明(package.json 声明了 types 入口),安装后即可获得类型提示,无需再安装 @types 包。

@asymmetrik/ngx-leaflet-markercluster 支持 ESM 还是 CommonJS?

以 ES Module 形式发布,推荐使用 import 引入。在 CommonJS 项目中,Node.js 20.19+ / 22.12+ 可以直接 require() 不含顶层 await 的 ES Module,更早的版本需要改用动态 import()。

@asymmetrik/ngx-leaflet-markercluster 可以商用吗?

@asymmetrik/ngx-leaflet-markercluster 使用 MIT 许可。宽松许可:允许商业使用、修改和再分发,通常只需在分发时保留原版权与许可声明。以上为概括,不构成法律意见,请以许可原文为准。

@asymmetrik/ngx-leaflet-markercluster 的下载量有多少?

根据 npm 官方下载统计,@asymmetrik/ngx-leaflet-markercluster 在 2026/10/07 – 2026/11/05 这 30 天内被下载 14,324 次,日均约 477 次。下载量会把 CI 构建、镜像同步和作为其他包依赖的安装一并计入,适合横向比较热度,不能直接等同于使用人数。

@asymmetrik/ngx-leaflet-markercluster 还在维护吗?

最新版本 18.0.0 发布于 2024/06/02(2 年前);至今共发布 19 个版本,其中过去 12 个月发布了 0 个;首次发布于 2017/08/29。作者已将其标记为弃用,新项目建议寻找替代方案。