ClojureScript中Leaflet React Markercluster相关包无法使用问题排查
在ClojureScript中使用Leaflet聚类插件的问题咨询
我需要在Leaflet中实现标记聚类功能,由于项目使用ClojureScript,尝试了npm上所有Leaflet React聚类相关包,但均遇到问题:
- 部分包编译时出现Babel报错或意外EOF;
- 部分包通过shadow-cljs编译后,浏览器控制台抛出
Uncaught Error: Assert failed: Invalid Hiccup form: [nil]错误(以@greenatom/react-leaflet-markercluster为例),该错误出自代码(def MarkerClusterGroup (r/adapt-react-class react-leaflet-cluster/MarkerClusterGroup))。
相关代码与依赖
ClojureScript依赖引入
(:require [reagent.core :as r] [re-frame.core :as re-frame] [leaflet :as leaflet] [react-leaflet :as react-leaflet] ["@greenatom/react-leaflet-markercluster" :as react-leaflet-cluster] [react-leaflet-heatmap-layer-v3 :as react-leaflet-heatmap])
package.json依赖配置
"dependencies": { "@greenatom/react-leaflet-markercluster": "^3.0.0-rc4", "highlight.js": "11.1.0", "leaflet": "^1.7.1", "react": "^17.0.2", "react-dom": "^17.0.2", "react-leaflet": "^3.2.2", "react-leaflet-heatmap-layer-v3": "^3.0.3-beta-1" },
功能使用代码
[(if (= display-option :cluster) MarkerClusterGroup LayerGroup) [Marker] ; 这里有多个标记,当display-option不为cluster时显示正常 ]
请问我遗漏了什么配置或步骤?是否这类React-Leaflet聚类包在ClojureScript环境下都存在兼容问题?有没有其他在ClojureScript中实现Leaflet标记聚类的可行方法?
内容的提问来源于stack exchange,提问作者Polymatheia
相关产品推荐
相关产品推荐

