【问题标题】:What does this block of code do? Angular Firebase Authentication这段代码有什么作用? Angular Firebase 身份验证
【发布时间】:2020-04-22 14:13:29
【问题描述】:
doRegister(value){
return new Promise<any>((resolve, reject) => {
firebase.auth().createUserWithEmailAndPassword(value.email, value.password)
.then(res => {
resolve(res);
}, err => reject(err))
})
}
有人可以帮我看一下这段代码吗?我最困惑的是 Promise 的结构,然后是从 .then 开始的代码。
谢谢!
【问题讨论】:
标签:
angular
firebase
authentication
promise
rxjs
【解决方案1】:
代码
firebase.auth().createUserWithEmailAndPassword(value.email, value.password)
返回一个 Promise 对象。 Promise 是一种执行异步任务的方式。 then() 方法返回一个 Promise。它最多需要两个参数:Promise 成功和失败情况的回调函数。
这个例子创建了一个promise,如果createUserWithEmailAndPassword 被resolve,它就会被resolve,如果另一个promise 被拒绝,它就会被拒绝。因此,该承诺被包装在另一个行为相同的承诺中。
我将其简化为:
doRegister(value) {
return firebase.auth().createUserWithEmailAndPassword(value.email, value.password);
}
直接返回 createUserWithEmailAndPassword 承诺,这应该表现相同。