對不起,我對Firebase Cloud Func中的查詢geofire及其各自的key_enter和key_exited有疑問,以便維護我附近的地理點列表位置?,從幾十萬提取。考慮到所有這些情況發生在用戶在節點Firebase實時數據庫中更新它的地理位置時,並且這個數十萬的列表在用戶的位置附近被減少到幾個Firebase雲端功能中的Geofire查詢
2
A
回答
0
以下是我用於與GeoFire
exports.testLocation = functions.database.ref('/tests/{test}').onWrite(event => {
let data = event.data.val();
console.log(data);
console.log(event.params.test);
if (data.location && data.location.coords) {
console.log('Update GeoFire');
geoBase = new geoBase(event.data.adminRef.parent.parent.child('/GeoFireTests'));
geoBase.addLocation(event.params.test, [data.location.coords.latitude, data.location.coords.longitude]);
}
});
GeoFire
let GeoFire = require('geofire');
module.exports = function(ref) {
this.geoFire = new GeoFire(ref);
this.addLocation = (key, location) => {
this.geoFire.set(key, location).then(() => {
console.log('Update succesfull');
}).catch(error => {
console.log(error);
});
}
}
+0
嗨,喬納斯,你能解釋一下你的答案的第二部分是什麼 –
+1
對不起,第二部分是一個單獨的模塊,導入到第一部分。它在這裏使用:geoBase = new geoBase()。 –
0
這是它會是什麼樣子,而不模塊
更新let functions = require('firebase-functions');
let GeoFire = require('geofire');
exports.testLocation = functions.database.ref('/items/{item}').onWrite(event => {
let data = event.data.val();
console.log(data);
console.log(event.params.item);
if (data.location && data.location.coords) {
console.log('Update GeoFire');
let ref = event.data.adminRef.parent.parent.child('/items_locations'));
let key = event.params.test;
let location = [data.location.coords.latitude, data.location.coords.longitude]);
let geoFire = new GeoFire(ref);
geoFire.set(key, location).then(() => {
console.log('Update succesfull');
}).catch(error => {
console.log(error);
});
}
}
相關問題
- 1. Cloud功能中的雲端Firestore查詢
- 2. 在GeoFire和Firebase查詢中執行功能時出錯
- 3. Firebase數據庫 - 雲功能查詢
- 4. 改進GeoFire查詢性能 - Firebase
- 5. Firebase雲端功能http請求到另一個Firebase雲端功能
- 6. 適用於Android的Firebase雲端功能
- 7. Firebase雲端功能自定義域名
- 8. Firebase雲端功能:讀取數據庫
- 9. 從Firebase雲端功能獲取UID
- 10. Firebase未找到雲端功能?
- 11. 如何更新Firebase雲端功能?
- 12. Firebase存儲和雲端功能 - ECONNRESET
- 13. 無法爲Firebase部署雲端功能
- 14. Firebase的雲端功能:管理員與根查找
- 15. Firebase端點處理圖像的雲端功能
- 16. Firebase註銷雲功能
- 17. 迭代jsonarray firebase雲功能
- 18. 功能聲明中Firebase通配符引用的雲端函數
- 19. 使用雲端功能在Firebase中循環和添加數據
- 20. 如何在Firebase中添加雲端功能版本
- 21. Firebase的雲端功能 - 移除最大的子女
- 22. Firebase的雲端功能 - 刪除或添加的數據
- 23. Firebase的雲端功能 - 訂閱用戶到主題
- 24. 爲什麼我所有的firebase雲端功能都會超時?
- 25. Firebase重定向到URL的雲端功能
- 26. 如何使用Firebase的雲端功能預渲染SEO頁面?
- 27. 用於Firebase雲端功能的自定義觀察器
- 28. 用於Firebase身份驗證觸發器的雲端功能
- 29. Firebase的雲端功能:電子郵件重複
- 30. 爲Firebase部署雲端功能的正確方法?
鑑於Geofire是一個基於Firebase JavaScript SDK構建的庫,它可以以相同的方式訪問Firebase數據庫。寫入數據庫是完全一樣的。但聽衆會以不同的方式工作。如果您遇到困難,我建議您嘗試一下,然後回覆。 –