是否可以在 sanity.io 中进行地理空间查询?

Is it possible to do geospatial queries in sanity.io?

我发现 sanity 支持 Geopoint type,但我找不到任何信息,如果可以对此类型进行任何过滤操作。可以进行地理空间查询吗?

地理空间查询的更简单语法在路线图上。

例如,如果您想要进行 Lat/Lng 有界查询,您可以按照以下方式进行,给定架构:

export default {
   name: 'aDocumentType',
   type: 'document',
   fields: [
    {
       name: 'position',
       type: 'geopoint'
    }
   ]
}

假设我们使用了 Mapbox,并且有一个 LngLatBounds object. Now we can make a query, using the params 映射到这个对象:

*[
  _type == "aDocumentType &&
  position.lng < $bounds._ne.lng &&
  position.lat < $bounds._ne.lat &&
  position.lng > $bounds._sw.lng &&
  position.lat > $bounds._sw.lat &&
]