Cloud Function从Reatime数据库检索数据并创建新表

时间:2019-02-07 21:47:03

标签: typescript firebase firebase-realtime-database google-cloud-functions

我正在使用Firebase开发应用程序。基本上,我的数据库是以这种方式构造的。有一个名为“帖子”的节点,其中包含所有帖子的子级。我想获得我的帖子,按他们的投票对其进行排序,并在Firebase中创建一个名为“图表”的新节点,其中包含地图中最好的50个视频。 我尝试在Typescript中开发云函数,但是它不起作用。

首先,当我尝试使用firebase.database部署它时,它说“找不到firebase”。如果我使用admin.firebase,它将正确部署,但实际上没有任何作用。

// The Cloud Functions for Firebase SDK to create Cloud Functions and setup triggers.
import * as functions from 'firebase-functions';

// The Firebase Admin SDK to access the Firebase Realtime Database.
const admin = require ('firebase-admin'); 
admin.initializeApp(functions.config().firebase);

let map = new Map();

exports.updatePosts = firebase.database().ref("/Posts/Vl8J4kQk6dOXGxVbzgvCxir4MYW2").onUpdate((change,event) => {
const query = admin.database().ref("Posts/Vl8J4kQk6dOXGxVbzgvCxir4MYW2");

query.once('value').then((snapshot) => {
snapshot.forEach(child => {
let postID = child.key; 
let upvotes = child.nUpvotes; 
map.set(postID,upvotes);

});

});

return admin.database().ref("Charts").set(map);

});

0 个答案:

没有答案