javascript - 如何在 Firebase 函数中访问不同的集合
问题描述
我保证我彻底检查了所有以前提出的问题,没有任何类似的东西。我有一个 firebase 函数,它在 firestore 集合上监听 onCreate。
exports.sendEmail = functions.firestore.document('/Users/{documentId}')
.onCreate((snap, context) => {
const username = snap.data().username;
const email = snap.data().email;
console.log(username, email)
const mailRef = functions.firestore.document('/mail')
return mailRef.ref.set({
email: email,
subject: 'Welcome'
});
});
在中创建文档后Users
,我想获取用户中的数据并在名为的主集合中创建一个新文档mail
。这可能吗,因为我已经阅读了 10 次文档,但没有任何内容。非常感谢任何帮助。
解决方案
要在云函数中创建文档,则需要使用 admin sdk,所以首先安装包:
npm install firebase-admin --save
初始化 admin sdk:
const admin = require('firebase-admin');
admin.initializeApp({
credential: admin.credential.applicationDefault()
});
const db = admin.firestore();
然后你可以添加:
const mailRef = db.collection('mail')
return mailRef.add({
email: email,
subject: 'Welcome'
});
https://googleapis.dev/nodejs/firestore/latest/CollectionReference.html#add
推荐阅读
- batch-file - 尝试在 Windows 10 中使用 gnu awk 来拆分大型序列文件
- javascript - 如何在我的应用程序架构中确保有效的依赖关系图
- python - 在一组文件中搜索 input_from_user 词
- javascript - node-js 中的异步/等待获取
- vb.net - 删除 DataTable 行,选定 DataGridView 行的源,单击按钮
- java - Velocity 2.0 迁移 LogChute 替换
- java - 有没有办法使用某些标准加入休眠中的任意两列?
- installation - 我不断收到错误 1304:写入文件时出错。该怎么办?
- php - 删除文本php中的多行
- xml - 如何使用 curl 在 XML url 中编码空格字符