2017-10-15 39 views
0

我想構建一個應用程序,用戶可以使用Github(截至目前,以及未來可能還有Facebook,Google +)登錄。在Firebase中爲用戶提供初始屬性的正確方法

我想知道我怎麼可能有初始屬性在用戶登錄時的第一次,這將在未來進行修改?

在我的應用程序組件我有一個onAuthStateChanged功能,將推動用戶信息到數據庫中,但問題是(明顯),這將在每一次做:

firebaseAuth.onAuthStateChanged((user) => { 
     if (user) { 
      this.setState({ 
       user 
      }); 

      usersRef.push({ 
       id: user.uid, 
       displayName: user.displayName, 
       coins: 3000 
      }); 
     } else { 
      this.setState({ 
       user: undefined 
      }); 
     } 
    }); 

有沒有一種方法,我可以檢查用戶是否登錄過?有沒有更好的方法來實現我想要的?

+0

嗨弗洛林,你有沒有讀過高階元件? –

+0

'.onAuthStateChanged'是如何正確地做到這一點。這種方法不會推動任何地方。 –

+0

@RonRoyston,你可以給我一點提示嗎? –

回答

0

也許你可以使用一個火力地堡認證觸發截至https://firebase.google.com/docs/functions/auth-events記錄。

你可以建立一個用戶創建剛過火力地堡服務器上運行一次的觸發器;該觸發可以在數據庫中對於用戶而言,這可能包括違約某些值更新數據。您的React應用程序隨後可以在需要時讀取該數據。

相關問題