【发布时间】:2016-04-01 22:39:42
【问题描述】:
我一直在使用 Angular 和 Firebase 构建一个应用程序,它一直在工作,直到我决定更改目录并从头开始重新构建它以解决一些兼容性问题(使用引导程序)。现在,当我尝试访问我的 URL 时,出现以下错误:
错误:[$injector:unpr] 未知提供者:$firebaseArrayProvider
我搜索了类似的问题,但没有找到任何可以解决我的问题的答案。我尝试通过凉亭和链接安装 Angular,以及链接到旧版本的 AngularFire.js 和 Firebase.js。以下是涉及的每个文件的代码。
index.html
<!DOCTYPE html>
<html lang="en" ng-app="myApp">
<link rel="icon" href="img/favicon.png">
<link rel="stylesheet" href="css/dirty-soda.css">
<link rel="stylesheet" href="https://maxcdn.bootstrapcdn.com/font-awesome/4.5.0/css/font-awesome.min.css">
<script src="http://code.angularjs.org/1.4.8/angular.js"></script>
<script src="http://code.angularjs.org/1.4.8/angular-route.js"></script>
<head>
</head>
<body>
<div ng-view></div>
<script src="app.js"></script>
<script src="editor/editor.js"></script>
<script src="https://cdn.firebase.com/js/client/2.2.4/firebase.js"></script>
<script src="angularfire.min.js"></script>
<script src="../src/ace.js"></script>
</body>
</html>
app.js
'use strict';
angular.module('myApp', [
'ngRoute',
'myApp.editor'
]).
config(['$routeProvider', function($routeProvider) {
$routeProvider.otherwise({redirectTo: 'app/editor'});
}]);
editor.js
angular.module('myApp.editor', ['ngRoute'])
.config(['$routeProvider', function($routeProvider) {
$routeProvider.when('/editor', {
templateUrl: 'editor/editor.html',
controller: 'SnippetCtrl'
});
}])
.controller('SnippetCtrl', ['$scope','$firebaseArray','CommonProp', function($scope,$firebaseArray,CommonProp) {
$scope.username = CommonProp.getUser();
var firebaseObj = new Firebase("<Firebase URL>");
$scope.snippets = $firebaseArray(firebaseObj);
}]);
【问题讨论】:
-
您需要在尝试注册之前包含模块,即包含 angularfire before
app.js -
我的脚本按以下顺序排列,但我仍然收到错误消息。我列出它们的方式有问题吗? Angular/AngularRoute/Firebase/AngularFire/app.js/editor.js
标签: javascript html angularjs firebase angularfire