0

我正在制作一个 angularJS 应用程序,我计划使用 Firebase 进行简单的身份验证。

我的 index.html 文件包括

    <script src="https://cdn.firebase.com/js/simple-login/1.6.2/firebase-simple-login.js"></script>
    <script src="scripts/login.js"></script>

我的 login.js 目前看起来像这样:

$(document).ready(function(){
  var myRef = new Firebase("https://my_app.firebaseio.com");
  var auth = new FirebaseSimpleLogin(myRef, function(error, user) {
    if (error) {
      // an error occurred while attempting login
      console.log(error);
    } else if (user) {
      // user authenticated with Firebase
      console.log("User ID: " + user.uid + ", Provider: " + user.provider);
    } else {
       // user is logged out
    }
  });
  var authRef = new Firebase("https://my_app.firebaseio.com/.info/authenticated");
  authRef.on("value", function(snap) {
    if (snap.val() === true) {
      alert("authenticated");
    } else {
      alert("not authenticated");
    }
  });
  auth.login('password', {
    email: 'user@host.com',
    password: 'password',
  });
  console.log(auth); 
});

我真正想做的就是测试我是否可以登录,以及登录后 auth 对象的外观。

稍后,我会将登录信息集成到 ng-model 中,以这种方式传递数据,而不仅仅是硬编码。

现在的问题是这段代码甚至没有运行,我从 javascript 控制台得到一个错误:

Uncaught ReferenceError: Firebase is not defined 

为什么会这样?

4

1 回答 1

3

看来您还没有包含firebase.js脚本。

只有firebase-simple-login.js是不够的,它需要firebase.js.

<script src="https://cdn.firebase.com/js/client/1.0.17/firebase.js"></script>
<script src="https://cdn.firebase.com/js/simple-login/1.6.2/firebase-simple-login.js"></script>
<script src="scripts/login.js"></script>
于 2014-08-11T16:03:43.000 回答