使用Node.js函数从Firebase获取Value Key对

好的,我正在使用Algolia在我的应用程序中处理search。 以下代码将我数据库中的任何内容添加到Algolia索引中。 但是,无论何时导入数据,Firebase节点中的所有值都置于Algolia索引中的“文本”下。

如何将其存储为Firebase中find的键值对。

地址:1234 Main St.

VS. / (代替)

文本:

地址:1234 Main St.


我的代码:

exports.indexentry = functions.database .ref('/blog-posts/{blogid}/text') .onWrite(event => { const index = client.initIndex(ALGOLIA_POSTS_INDEX_NAME); const firebaseObject = { text: event.data.val(), objectID: event.params.blogid, }; }); 

在这里输入图像描述

所以你在这里错过的是将数据推送到Algolia。 如果您想要将对象中的所有Firebase数据都分配给一个新对象,以及objectID

 exports.indexentry = functions.database .ref('/blog-posts/{blogid}/text') .onWrite(event => { const index = client.initIndex(ALGOLIA_POSTS_INDEX_NAME); const firebaseObject = Object.assign({}, event.data.val(), { objectID: event.params.blogid, }); index.saveObject(firebaseObject); // .then or .catch as well }); 

那有意义吗?