私はJavascriptとIonicの初心者です。データベースからデータを表示するだけで頭を悩ませています。firebaseデータを表示した結果がありません
ただし、デバイスのさまざまな理由でこれを実行中に私のコンソールをチェックすることはできません。
とにかく、ここで私は、ユーザーの「説明」を表示するために使用するコードは次のとおりです。
// Get a database reference to our posts
var descriptionRef = new Firebase("https://swapizapplication.firebaseio.com/accounts/-KOkwpzslw9NyUrTtvA7");
// Attach an asynchronous callback to read the data at our posts reference
descriptionRef.on("value", function(snapshot) {
var descriptionSnapshot = snapshot.child("displayDescription");
var description = descriptionSnapshot.val();
console.log(snapshot.val());
}, function (errorObject) {
console.log("The read failed: " + errorObject.code);
});
私が欲しいのは、私はにリンクされたHTMLページに{{説明}}を書くときということですそのコードを持つコントローラは、 "displayDescription"(そのユーザーのデータベース内のフィールドの1つの名前)に「-KOkwpzslw9NyUrTtvA7」というユーザーのデータベースのデータを表示します。
ただし、データは表示されません。ページが表示され、特にエラーは表示されませんが、データは表示されません。
.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;
console.log("User: " + JSON.stringify(user));
if (user != null) {
name = user.displayName;
email = user.email;
photoUrl = user.photoURL;
provider = user.provider;
description = user.displayDescription
}
//Set Profile Image.
$scope.profileImage = photoUrl;
//Set Profile Name.
$scope.profileName = name;
//Set Profile email.
profileEmail = email;
//Set provider.
provider = provider;
// Get a database reference to our posts
var descriptionRef = new Firebase("https://swapizapplication.firebaseio.com/accounts/-KOkwpzslw9NyUrTtvA7");
// Attach an asynchronous callback to read the data at our posts reference
descriptionRef.on("value", function(snapshot) {
var descriptionSnapshot = snapshot.child("displayDescription");
var description = descriptionSnapshot.val();
console.log(snapshot.val());
}, function (errorObject) {
console.log("The read failed: " + errorObject.code);
});
});
});
NOOBを助けるためにすべてのアイデア:ここ
は、私は私のコントローラ(フルビュー)を作った方法ですか? :P
EDITは:私のデータベースのJSONを追加します。
{
"-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"
}
}
EDIT 2:
を私はそれはまだ動作したくない、別の解決策のために行くと考えます!
.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;
}
//Set Profile Image.
$scope.profileImage = photoUrl;
//Set Profile Name.
$scope.profileName = name;
//Set Profile email.
$scope.profileEmail = email;
//Set provider.
$scope.provider = provider;
var descriptionRef = firebase.database().ref('accounts/' + user + '/displayDescription/');
descriptionRef.on('value', function(snapshot) {
description = snapshot.val();
$scope.description = description;
$scope.$apply();
});
});
こんにちは!まず、私に答えて、コードをもっと見やすくする時間をとってくれてありがとう!私は本当にそれを感謝します:私は乱雑です! しかし、結果は同じです...何も表示されません...エラーである可能性があることを伝えるのは難しいです... – FrenchyNYC
リトルEDIT:私のデータベースのJSON構造を追加しました。 made – FrenchyNYC
その後、いくつかのことがあるかもしれません。たぶん、データベースセキュリティルール。または '.on( 'value'、...)'が呼び出されません。フィードバックを得るためにコンソールを使用することはできないので、HTLMタグを使用することをお勧めします。このようなもの: '