Mapbox操作不在当前视口中的图层要素

Mapbox操作不在当前视口中的图层要素,mapbox,mapbox-gl-js,Mapbox,Mapbox Gl Js,我计划将源类型从geojson更改为vector。 我已经从我自己的服务器创建了一个为矢量图块提供服务的源。我的矢量图块具有我需要的所有相关应用程序信息 我将使用此设置作为搜索平台,左侧显示结果,另一侧显示加载了瓷砖的相应地图(可以与地图功能及其相应结果卡交互,例如突出显示功能层等) 我的应用程序有两种常见的场景,比如我可以向下滚动结果以加载另一批结果,但问题是,当mapbox按照z,x调用其自定义分幅时,如何与当前视图端口中未加载的功能交互,y坐标空间在用户滚动结果的场景中保持不变 是否有任何

我计划将源类型从geojson更改为vector。 我已经从我自己的服务器创建了一个为矢量图块提供服务的源。我的矢量图块具有我需要的所有相关应用程序信息

我将使用此设置作为搜索平台,左侧显示结果,另一侧显示加载了瓷砖的相应地图(可以与地图功能及其相应结果卡交互,例如突出显示功能层等)

我的应用程序有两种常见的场景,比如我可以向下滚动结果以加载另一批结果,但问题是,当mapbox按照z,x调用其自定义分幅时,如何与当前视图端口中未加载的功能交互,y坐标空间在用户滚动结果的场景中保持不变


是否有任何方法触发对磁贴服务器的调用,并使磁贴在地图中可用于下一批搜索结果

如果您的设置是真值的来源是向量数据集,并且结果是从该数据集派生的(可能使用
map.querySourceFeatures()
),那么您就有问题了。查询不在当前视口中的源要素并非易事。您可能需要通过其他方式加载一些数据,例如GeoJSON文件(据我所知,您刚刚离开了该文件)

如果您已经通过不同的方法获得了结果(单独的AJAX调用),那么您可能只需要使用
map.panTo()
手动将地图平移到与结果相关的位置


不过,我不确定自己是否完全理解了该场景,也不确定问题到底是什么。

你说得对,我可以手动平移地图,等待加载分幅。但是有没有其他方法可以触发对tile URL集的调用(我将从视口外的tile空间坐标构建URL)并更新我的源代码?我不知道。想必您可以深入Mapbox的内部并做一些骇人的事情。