【问题标题】:Leaflet: Uncaught TypeError: L.markerClusterGroup is not a function传单:未捕获的类型错误:L.markerClusterGroup 不是函数
【发布时间】:2020-02-05 12:14:58
【问题描述】:

我正在尝试将 markercluster 添加到传单中。

var markers = L.markerClusterGroup();

我的头文件包括:

   script(src='https://unpkg.com/leaflet@1.0.1/dist/leaflet.js')
   link(type='text/css', rel='stylesheet', href='/stylesheets/MarkerCluster.css')
   link(type='text/css', rel='stylesheet', href='/stylesheets/MarkerCluster.Default.css')        
   script(src=/javascripts/leaflet.markercluster-src.js')

但我不断收到错误消息:L.markerClusterGroup 不是函数

我不确定为什么会出现该错误。

【问题讨论】:

    标签: javascript leaflet


    【解决方案1】:

    这是一个简单的 Angular 导入错误,将导入更改为以下内容即可解决此问题:

    import * as L from 'leaflet';
    import 'leaflet.markercluster';
    
    // Compile & run = OK
    private myClusterGroup = L.markerClusterGroup();
    

    使用 Angular 7、leaflet 1.6.0 和 leaflet.markercluster 1.4.1 进行测试

    【讨论】:

      【解决方案2】:

      我认为您在声明中遗漏了一句话

      script(src='/javascripts/leaflet.markercluster-src.js')
      

      【讨论】:

      • 我其实也喜欢你说的,但是还是不行
      • 可能找不到该脚本。你检查你的 JavaScript 控制台了吗?
      • 是的。它在里面。
      • 我不知道为什么,但是当我输入“var markers = L.markerClusterGroup();”时在 window.onload = function(){} 内。它不再显示问题了。
      • 可能与您使用 script() 和 link() 的功能有关。你为什么不使用
      【解决方案3】:

      试试

      var markers = new L.markerClusterGroup(); 
      

      而不是

      var markers = L.markerClusterGroup();
      

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 1970-01-01
        • 2022-10-03
        • 1970-01-01
        • 1970-01-01
        • 2022-11-19
        • 1970-01-01
        • 2019-06-06
        • 2019-05-24
        相关资源
        最近更新 更多