0

我正在嘗試創建Google身份驗證,但我將var provider = new firebase.auth.GoogleAuthProvider();複製到我的JavaScript中,它一直告訴我那Uncaught ReferenceError: firebase is not defined未捕獲ReferenceError:沒有定義firebase

這裏是我的代碼:

var provider = new firebase.auth.GoogleAuthProvider(); 

function signin(){ 

    firebase.auth().signInWithPopup(provider).then(function(result) { 

    var token = result.credential.accessToken; 
    var user = result.user; 

}).catch(function(error) { 

    var errorCode = error.code; 
    var errorMessage = error.message; 
    var email = error.email; 
    var credential = error.credential; 

}); 
} 

回答

2

因爲firebase變量沒有被實例化,並在其上運行的代碼初始化頁面上您收到此錯誤。要做到這一點,你需要 -

  1. 包括相關scripts-

    <script src="https://www.gstatic.com/firebasejs/4.1.3/firebase.js"></script> <script src="https://www.gstatic.com/firebasejs/4.1.3/firebase-auth.js"></script>

firebase.js包含代表你的火力應用變量firebasefirebase-auth.js包含您的代碼正在使用的firebase.auth庫。

  • 使用初始化您的應用程序 -

    var config = { 
        apiKey: "<API_KEY>", 
        authDomain: "<PROJECT_ID>.firebaseapp.com", 
        databaseURL: "https://<DATABASE_NAME>.firebaseio.com", 
        storageBucket: "<BUCKET>.appspot.com", 
        messagingSenderId: "<SENDER_ID>", 
    }; 
    
    firebase.initializeApp(config); 
    
  • 要了解更多信息請參閱 - https://firebase.google.com/docs/web/setup

    +0

    非常感謝它的工作原理 –

    +0

    酷。請接受我的回答。 –

    +0

    我確定我會問,有沒有什麼辦法可以聯繫你,請像Gmail或其他....... –

    相關問題