update query firestore collection firebase google-cloud-firestore

query - ¿Cómo guardar GeoPoint en Firebase Cloud Firestore?



firestore update (3)

en la base de datos de la interfaz de usuario puedo crear un campo con el tipo geopoint . Después de proporcionar valores, se ve algo como esto:

location: [1° N, 1° E]

Estoy intentando guardar esto en la base de datos a través del SDK del lado del cliente (web). Basándome en los comentarios de Twitter, probé GeoJSON, Coords Array y Coords Object:

location: [1, 2]; location: { latitude: 1, longitude: 2, }; location: { "type": "Feature", "geometry": { "type": "Point", "coordinates": [125.6, 10.1] } }

Ninguno de los cuales resultó en el tipo de geopunto en la base de datos. Sólo se guardan como objetos / matrices.

¿Cómo guardar GeoPoint en Firebase Cloud Firestore a través del SDK web?


Los SDK de Firestore incluyen una GeoPoint class , por lo que tendría que guardar ubicaciones como esta:

{ location: new firebase.firestore.GeoPoint(latitude, longitude) }


Luché para encontrar la importación / exigencia correcta. ¡Esto es lo que funcionó para mí!

const firebaseAdmin = require(''firebase-admin''); //other code .... //assigning value to myLocation attribute let newObject = { otherAttribute:"otherAttributeValue", myLocation: new firebaseAdmin.firestore.GeoPoint(latitude,longitude) }


Simplemente use:

import ''package:cloud_firestore/cloud_firestore.dart''; { location:GeoPoint(latitude, longitude) }