【发布时间】:2020-06-09 03:24:13
【问题描述】:
我正在使用 Node.js 将测试数据上传到 Firestore 数据库。在每个文档的数据集中,我都有一个 GeoPoint 字段。我无法弄清楚如何上传数据类型:Firestore 字段格式的 GeoPoint,可以手动完成,您可以在字段类型 GeoPoint 下输入纬度和经度作为 2 个单独的条目。我的 Node.js 仅作为单个“字符串”上传
对我的代码的任何帮助将不胜感激..!
参考:https://firebase.google.com/docs/reference/node/firebase.firestore.GeoPoint
const admin = require('./node_modules/firebase-admin');
const serviceAccount = require("./**ServiceAccount**.json");
const data = require("./csvjson.json");
const collectionKey = "towns"; //name of the collection
admin.initializeApp({
credential: admin.credential.cert(serviceAccount),
databaseURL: "**DatebaseURL**.com"
});
const firestore = admin.firestore();
const settings = {timestampsInSnapshots: true};
firestore.settings(settings);
if (data && (typeof data === "object")) {
Object.keys(data).forEach(docKey => {
firestore
.collection(collectionKey)
.doc()
.set(data[docKey])
.then((res) => {
console.log("Document " + docKey + " successfully written!");
})
.catch((error) => {
console.error("Error writing document: ", error);
});
});
}
【问题讨论】:
-
您应该能够在文档中设置一个点,如下所示:stackoverflow.com/a/62103613,然后可能使用
new admin.firestore.GeoPoint(latvalue, lonvalue)。
标签: node.js firebase google-cloud-firestore geopoints