*我正在处理angularfire-seed内的示例代码。
经过身份验证的用户在帐户页面上更新其个人资料电子邮件时,如何更新Firebase简易登录电子邮件值?
答案 0 :(得分:0)
account.html页面调用updateEmail
:
<button ng-click="updateEmail()">update email</button>
直到AccountCtrl controller的角钩:
$scope.updateEmail = function() {
$scope.reset();
// disable bind to prevent junk data being left in firebase
$scope.unBindAccount();
changeEmailService(buildEmailParms());
};
基本上,changeEmailService会创建一个新帐户,对其进行验证,然后删除旧帐户。然后它将数据更新为/ user路径。它使用链式承诺回调的这种算法:
// execute activities in order; first we authenticate the user
authenticate()
// then we fetch old account details
.then( loadOldProfile )
// then we create a new account
.then( createNewAccount )
// then we copy old account info
.then( copyProfile )
// and once they safely exist, then we can delete the old ones
.then( removeOldProfile )
.then( removeOldLogin )
// success
.then( function() { cb && cb(null) }, cb )
.catch( errorFn );