0
私のイオンプロジェクトには、ログインしているユーザを確認し、そのユーザに関するデータを表示するコントローラがあります。Firebaseでデータを見つけることができません
ただし、現在のユーザーにリンクしているデータをデータベースに表示しようとしています。私は、そのコードを試してみましたが、それはそれは表示されません:
.controller('AccountCtrl', function($scope, $state, $cordovaOauth) {
$scope.$on('$ionicView.enter', function() {
//Get logged in user credentials.
var user = firebase.auth().currentUser;
var name, email, photoUrl, provider, description;
console.log("User: " + JSON.stringify(user));
if (user != null) {
name = user.displayName;
email = user.email;
photoUrl = user.photoURL;
provider = user.provider;
uid = user.uid;
}
//Set Profile Image.
$scope.profileImage = photoUrl;
//Set Profile Name.
$scope.profileName = name;
//Set Profile email.
$scope.profileEmail = email;
//Set provider.
$scope.provider = provider;
var userId = firebase.auth().currentUser;
var accountRef = firebase.database().ref('accounts/' + userId);
accountRef.on('value', function(account) {
$scope.description = account.val().displayDescription;
$scope.$apply();
});
}) ;
});
をしかし、私はしようとすると、それは何も表示されない{{説明}}
実際に私は見つけるために、アカウントのラインを持ってしてみてください」あなたは、このようにターゲットカント、あなたのデータ記述/その形式のアカウント/ユーザーIDでから例えば、現在のユーザー、ユーザー-KOkwpzslw9NyUrTtvA7
{
"accounts" : {
"-KOjv0LDdoWrc3uApvPi" : {
"dateCreated" : "Tue Aug 09 2016 11:29:18 GMT-0400 (EDT)",
"email" : "[email protected]",
"provider" : "Facebook",
"userId" : "FMXlUQZth5aehQLT2TKZZJZdJBh2"
},
"-KOkwpzslw9NyUrTtvA7" : {
"dateCreated" : "Tue Aug 09 2016 16:16:52 GMT-0400 (EDT)",
"displayDescription" : "no description",
"email" : "[email protected]",
"provider" : "Facebook",
"userId" : "F9Z7YhSlmAQqOH5FVjBSV2CkYZG3"
}
}
}
accountRef.on関数はダイジェストサイクルの一部ではないと思います。 $ scope.applyやAngularFireを試してみるといいでしょう。 – davibq
私はちょうどvar userId = '-KOkwpzslw9NyUrTtvA7'を置くとすべて動作します。私はちょうどそれを持っているので、私はあなたが見るコードでこれを書いているのではなく、自動的に現在のユーザを選択しています:) – FrenchyNYC