我从不是geoJson的数据库中获取数据,所以我使用array.map函数动态地根据我获取的数据生成一个,然后传递给组件。但是似乎这个geoJson粘贴到URL作为GET参数...
如果我将geoJson另存为静态文件,然后导入,它将正常工作。
如何在React-map-gl中将GET方法更改为POST方法??
<Source
type="geojson"
data={myData}
ref={_sourceRef}
>
<Layer {...stopPointLayer} />
</Source>发布于 2020-04-01 02:59:53
我们可以通过查看uber/react-map-gl和mapbox/mapbox-gl-js的源代码来确定根本原因。在Source组件中传递data={myData}时,/react-map-gl依赖于Mapbox的GeoJSONSource#setData,如src/components/source.js here中所示
if (type === 'geojson') {
source.setData(sourceOptions.data);
}如API reference for setData中所示,data参数必须是GeoJSON数据对象或指向该数据对象的URL值。这听起来可能是这样的,当您动态传递myData时,它的格式可能不正确,但当您将其配置为静态文件时,它的格式是正确的。在这个特定的场景中,我看不出为什么这个问题与GET和POST请求有关。
https://stackoverflow.com/questions/60561700
复制相似问题