0

Firebaseに設定した情報を取得しようとすると問題が発生します。私がconsole.logを実行したとき、私は未定義の年齢と性別を未定義にしました。Firebaseはフィールドを未定義として返します

以下は、Firebaseにユーザー情報を設定するために書いたコードです。ユーザーが1つのユーザープロファイルしか持たないため、私はsetメソッドを使用しました。プッシュメソッドを使用すると、ユーザーに追加のプロファイルを追加する必要はありません。

onTestSubmit(){ 
    const { currentUser } = firebaseApp.auth(); 

    let { gender, age } = this.state; 

    firebaseApp.database().ref(`/users/${currentUser.uid}/profile`).set({ 
    gender: this.state.gender, 
    age: this.state.age 
    }) 
} 

これは、Firebaseから情報を取得するためのコードです。

fetchUserProfile(){ 
const { currentUser } = firebaseApp.auth(); 
firebaseApp.database().ref(`/users/${currentUser.uid}/profile`).orderByValue() 
.on('child_added', snapshot => { 
    console.log(snapshot.key, snapshot.value); 
}) 
} 

Chromeデバッガは、未定義の未定義および性別を返します。

users 

    3cUWAm052… 
     profile 
      age: “32” 
      gender: “Male” 

    JYPknwOipdS… 
     profile 
      age: “22” 
      gender: “Female” 
+0

は、あなたが() '' snapshot.valを試してみましたsnapshot.valueないsnapshot.val()を使用する必要がありますfirebaseから値を取得するには、次のように私のFirebaseデータベースが構成されていますか? – Cherniv

+0

ありがとうCherniv!できます。おかげで –

答えて

0

あなたは

+0

おかげでwviciosoは共有! :) –

関連する問題