Wie bekomme ich die aktuelle Benutzeradresse von Firebase? Brauche Hilfe für diesen Teil. Ich habe den aktuellen Benutzer verwendet, um die Adresse anzurufen, kann sie aber nicht abrufen. Ich bin in der Lage, alle Benutzeradresse von der Firebase zu erhalten. Aber als ich unten versuchte, die aktuelle Benutzeradresse abzurufen, ist es fehlgeschlagen.So erhalten Sie die aktuelle Benutzeradresse von Firebase
openMapPage()
{
var ref = firebase.database().ref("request");
ref.once("value").then((snapshot) => { // <------ Here!
var a = snapshot.exists(); // true
var c = snapshot.hasChild("reqdetails"); // true
var d = snapshot.child('reqdetails').exists();
var requestsKey = snapshot.key;
var requestsValue = snapshot.val();
//var currentadd = requestsKey.reqdetails.address;
//this.afAuth.authState.take(1).subscribe(data =>{
///this.profileData = this.af.object(this.user);
//console.log(this.profileData);
//})
firebase.auth().onAuthStateChanged(function(user) {
if (user) {
// User is signed in.
var user = firebase.auth().currentUser;
var currentUserId = user.uid;
var currentadd = this.currentUserId.regdetails.address;
console.log("Current User Address");
console.log(currentadd);
} else {
// No user is signed in.
}
});
snapshot.forEach((childSnapshot) => { // <------ And here!
var requestKey = childSnapshot.key;
var requestValue = childSnapshot.val();
var reqdetails = requestValue.reqdetails;
var AllUserAddress = requestValue.regdetails.address;
//var currentUserAdd = currentUserId.address;
if (reqdetails) {
this.data = requestKey;
console.log(this.data);
//this.arr.push(requestKey);
//console.log(this.arr);
this.getRequest = this.angFire.list('request', {
query: {
orderByChild: 'reqdetails',
startAt: 'reqdetails'
}
})
}
});
});
}
Mein Konstruktor, wo ich currentUserId deklariere. Diese
constructor(public navCtrl: NavController, public navParams: NavParams, private angFire: AngularFireDatabase,private af: AngularFireDatabase,
private afAuth: AngularFireAuth) {
//this.request = angFire.list('/request');
this.getRequest = angFire.list('request', {
query: {
orderByChild: 'reqdetails',
startAt: 'reqdetails'
}
})
var user = firebase.auth().currentUser;
var currentUserId = user.uid;
//this.userreq = angFire.list(`${this.userkey}`);
//this.reqdetails = angFire.list('reqdetails');
//this.request = angFire.list(this.data);
}
ist, wie meine Feuerbasis Konsole aussehen wie
Nun ich diese Fehlermeldung am gettting
Ok reqdetails und regdetails hat Adresse. Aber ich kann keine Adresse vom aktuellen Benutzer erhalten – Suresh
Haben Sie versucht, console.log (childsnapshot.val()) zu überprüfen, um sicherzustellen, dass Sie einen Wert erhalten, um damit zu beginnen? Ich sehe keine Probleme damit, wie Sie die Adresse vom Snapshot erhalten, vorausgesetzt, der Wert von childsnapshot ist der '0AJ2wNW ...' - Knoten in der von Ihnen bereitgestellten Bildschirmaufnahme. – nclarx
Yup. Ich kann nicht verstehen, warum ich die aktuelle Benutzeradresse nicht bekommen kann. – Suresh