我试图在Firestore集合中保存geopoint,但它会抛出错误。这是我的代码。
var post = req.body;
let data = {
name: !cmnFn.empty(post.name) ? post.name : '',
user_location: (new admin.firestore.GeoPoint(28.52038,77.28073)),
created_at: d.getTime()
}
// Saving data
db.collection('users').doc(post.uid).set(data);
我收到的错误
错误:无法将类型([对象对象])编码为Firestore值
答案 0 :(得分:1)
现在我可以保存地理位置了。请参阅完整代码以实现此目的。
const admin = require("firebase-admin");
const serviceAccount = require(process.env.FBASE_AUTH_FILE);
admin.initializeApp({
credential: admin.credential.cert(serviceAccount),
databaseURL: "https://<PROJECT_ID>.firebaseio.com"
});
const Firestore = admin.firestore;
const db = Firestore();
let d = new Date();
let data = {
name: 'Amit',
location: new admin.firestore.GeoPoint(28.52038,77.28073),
created_at: d.getTime()
}
setDoc = db.collection('users').doc().set(data);
if (setDoc) {
console.log('user added');
}