MapboxGL数据加载事件从不更改属性isSourceLoaded为true

MapboxGL数据加载事件从不更改属性isSourceLoaded为true,mapbox,mapbox-gl,mapbox-gl-js,Mapbox,Mapbox Gl,Mapbox Gl Js,我试图获得源完全加载以执行操作的时刻。 我正在使用并等待isSourceLoaded变为真,但这从未发生过 我使用的侦听器如下所示: map.on('dataloading', e => { if (e.dataType === 'source') { console.log(e) } }) 我认为您应该听的是数据事件,而不是数据加载事件,但即使如此,ISourceLoaded的实现仍然存在一个bug,我们正在跟踪这个bug。同时,一个解决方法是在触发数据事件时检查map

我试图获得源完全加载以执行操作的时刻。
我正在使用并等待
isSourceLoaded
变为真,但这从未发生过

我使用的侦听器如下所示:

map.on('dataloading', e => {
  if (e.dataType === 'source') {
    console.log(e)
  }
})

我认为您应该听的是
数据
事件,而不是
数据加载
事件,但即使如此,
ISourceLoaded
的实现仍然存在一个bug,我们正在跟踪这个bug。同时,一个解决方法是在触发
数据
事件时检查
map.style.sourceCaches[“composite”].loaded()

希望这有帮助


免责声明-我在Mapbox工作

Hello@mollymerp,谢谢你的帮助。最后,在加载所有源代码并在返回true时更新我的应用程序状态时,我检查了调用
map.loaded()
的映射的状态。你能举个例子说明你是如何做到的吗?我真的需要找到一种方法,在缩放和平移之后,确保所有的功能都被渲染,听起来就像你做的一样。Hello@malcolm,我的上下文是一个使用MapboxGL的React应用程序。我提取了一段代码,用于检查是否所有源代码都已加载并发布到该页面上。我希望有帮助。