【发布时间】:2019-09-01 05:18:06
【问题描述】:
我希望能够在一个集合中创建一个新文档,作为更新另一个集合中文档的一部分。
简单版。用户通过单击按钮更新任务的状态。
我需要做的是这个
completeTask(task:ITask) : Promise<any>
{
const userId = this.auth.userId;
this.afs.collection('Tasks').doc(task.id).update({Status: 'COMPLETE'});
this.afs.collection('Notifications').add({Task:task.id, Status: 'COMPLETE', UserId: userId});
// ...
// return Promise here;
}
以上需要作为单个操作的一部分发生。 我已经阅读了所有关于批处理和事务的内容,但似乎无法找到如何正确执行此操作。 我可以按顺序运行它们并返回一个
Promise.all(taskPromise, notifyPromise);
或将一个链接在一起 - 但我希望有一个更优雅的解决方案。
【问题讨论】:
标签: angular collections transactions google-cloud-firestore