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或其他....... –

    相关问题