角度火力 - 参考错误:未定义火力基地



我已经通过CDN包含了Firebase和AngularFire js文件。我已经将AngularFire注入我的应用程序中,然后将$firebaseArray注入我的控制器。然而,由于某种原因,我仍然在我的开发控制台中收到"Firebase 未定义错误"。

我查看了以下链接:

角度火力 - 未定义火力基地

Firebase 错误 - "FireBase 未定义">

Angularfire"Firebase"未定义

角度火未

捕获参考错误:未定义火力基地

它们都没有解决我的情况。我错过了什么吗?我在下面包含我的代码:

//App
angular.module("TestApp", ['ngAnimate', 'ui.router', 'ui.bootstrap', 'firebase']);
//Controller
angular.module('TestApp')
.controller('DetailsController',['$scope', '$firebaseArray', '$http', function ($scope, $firebaseArray, $http) {
    console.log($firebaseArray); // <- verified here that the injection works
    var rootRef = new Firebase("https://<my-ref-url>.firebaseio.com");
    //load data from firebase db
    $scope.loadCommunity = function(){
        $scope.hasCommunity = true;
        $scope.messages = $firebaseArray(rootRef);
    };
}]);

以下是我包含在index.html文件中的代码:

<script src="https://www.gstatic.com/firebasejs/3.0.3/firebase.js"></script>
<script src="https://www.gstatic.com/firebasejs/3.0.3/firebase-app.js"></script>
<script src="https://www.gstatic.com/firebasejs/3.0.3/firebase-auth.js"></script>
<script src="https://www.gstatic.com/firebasejs/3.0.3/firebase-database.js"></script>
<script>
  // Initialize Firebase
  var config = {
    apiKey: "MY API KEY HERE",
    authDomain: "<my-ref-url>.firebaseapp.com",
    databaseURL: "<my-ref-url>.firebaseio.com",
    storageBucket: "",
  };
  firebase.initializeApp(config);
</script>
<script src="https://cdnjs.cloudflare.com/ajax/libs/angularFire/2.0.1/angularfire.min.js"></script>

问题是您正在尝试使用new Firebase("https://<my-ref-url>.firebaseio.com");获取rootRef,而这来自传统的2.x Firebase SDK。

这是Firebase 3.x的变化之一。你必须以稍微不同的方式做到这一点。

var rootRef = firebase.database().ref();

你可以用这个jsFiddle做一些测试

相关内容

  • 没有找到相关文章

最新更新