this.verifyUserTokenブロック内のコードは実行されませんです。私はそれは、非同期呼び出しは、返されたデータが準備ができていないということと関係していると思うが、私はそれについて行く方法を知らないようだ。 verifyUserToken
以来コード内部では一度も実行されていませんangularjs
this.verifyUserToken = function(){
//Check if token matches existing token and if verified is true
ref.orderByChild('token').equalTo(this.token).once('value').
then(function(dataSnapshot){
//If token matches
if(dataSnapshot.val()){
alert("Token Exists",dataSnapshot.val().token);
$scope.isVerified = "YES";
}else{
alert("Token does not exist",dataSnapshot.val());
$scope.isVerified = "NO";
}
});
}
this.registerUser = function(){
console.log("Entered registerUser()");
this.verifyUserToken();
alert("The Value of isVerified:"+ $scope.isVerified);
if($scope.isVerified == "YES"){
alert("Verifying User Token...",this.verifyUserToken());
$scope.auth.$createUser({
"email": this.email,
"password" : this.password
}).then(function(userData){
alert("Successfully created user account with uid:", userData.uid);
//redirect to /userlogin if registration is successful
//this.changeVerifiedStatus();
alert("User verifed and changed");
$location.path('/userlogin');
}).catch(function(error){
alert("Error Creating User:",error);
});
}else{
alert("Token failed verification");
}
};
verifyUserTokenのコールバックに確認を入れる必要があります。現在のところそのまま継続されます。確認されているのは常にnull null – Zaki
私の答えがあなたのために働くか、まだ疑問がある場合は教えてください。 :) – adolfosrs