leafletmarkerrefreshplugin
v1.0.2
Published
传入新老数据,自动对比新老数据变化部分,从而达到只更新变化的marker,而不是全部重绘
Downloads
8
Readme
功能
传入新老数据,自动对比新老数据变化部分,从而达到只更新变化的marker,而不是全部重绘
引入
import 'leafletMarkerRefreshPlugin' //注意:需要在引入了leaflet之后再引入该插件使用
const newData = L.refreshMarkers(options)
// 调用后,会返回处理过后的新数据,应保存,下一次调用作为旧数据传入options
| 参数 | 描述 | 必传 | 类型 | | ---------- | ---------------- | ------------------------------- | -------------------- | | oldData | 旧数据 | 是 | IOldData[] | | newData | 新数据 | 是 | INewData[] | | compareStr | 要对比的字段 | 是 | string[] | | markerFn | 构造marker的回调 | 是 | () => leafletMarker | | isCluster | 是否使用了聚合 | 否 | boolean | | clusterFn | 构造聚合的回调 | 否(若isCluster为true,则必传) | () => leafletCluster | | map | leaflet地图 | 是 | leafletMap |
IOldData
| 参数 | 描述 | 必传 | 类型 | | ----------- | ------------------- | ------------------------------- | -------------- | | id | 主键 | 是 | any | | markerIns | leaflet的marker实例 | 是 | leafletMarker | | clusterIns | leaflet的聚合实例 | 否(若isCluster为true,则必传) | leafletCluster | | clusterName | 聚合的名称 | 否(若isCluster为true,则必传) | string |
INewData
| 参数 | 描述 | 必传 | 类型 | | ----------- | ---------- | ------------------------------- | ------ | | id | 主键 | 是 | any | | clusterName | 聚合的名称 | 否(若isCluster为true,则必传) | string |
