未捕获的错误:没有模块:firebaseSimpleLogin

时间:2014-10-30 02:21:14

标签: angularjs node.js firebase firebasesimplelogin

当我打开我的网站时,除了在控制台中没有显示任何内容,它表示"未捕获错误:没有模块:firebaseSimpleLogin"。如果没有$ firebaseSimpleLogin和登录/注册功能,我的网站可以很好地使用Firebase。

我正在使用AngularJS,我在我的模块/控制器中添加了$ firebaseSimpleLogin作为依赖项。 这是模块:

angular.module('flavor', ['flavorServices', 'firebase', 'firebaseSimpleLogin'])
.config(flavorRouter);

function flavorRouter ($routeProvider) {
    $routeProvider
    .when('/', {
        templateUrl: 'partials/the_part_using_login.html',
        controller: 'the_part_using_login_Ctrl'});
}

这是部分html的控制器:

function the_part_using_login_Ctrl ($scope, $firebase, $firebaseSimpleLogin) {

    var userAuthRef = new Firebase("https://thenameofmyapp.firebaseio.com/userAuth");
    var loginObj = $firebaseSimpleLogin(userAuthRef);
    $scope.user = loginObj.user;
    $scope.userLogin = function(){
        //login part here
    };
    $scope.userSignup = function(){
        //signup part here
    };
}

我已按以下顺序将这些文件包含在index.html中。我不确定这个顺序是否正确:

<script src="https://cdn.firebase.com/js/client/1.1.3/firebase.js"></script>
<script type="text/javascript" src="js/lib/angular.min.js"></script>
<script src='https://cdn.firebase.com/libs/angularfire/0.8.0/angularfire.js'></script>
<script type="text/javascript" src="js/lib/angular-resource.min.js"></script>
<script src="https://cdn.firebase.com/v0/firebase-auth-client.js"></script>
<script src='https://cdn.firebase.com/js/simple-login/1.6.2/firebase-simple-login.js'></script>
<!--Other partial files and controller files-->

另外要提的是,我也使用nodeJS作为我的服务器。我使用服务器处理一些特殊文件,所以我不想把所有内容放在Firebase Hosting上。我不确定nodeJS是否在干扰$ firebaseSimpleLogin。

1 个答案:

答案 0 :(得分:2)

在您的依赖项中,您有[..., 'firebase', 'firebaseSimpleLogin'],但没有名为firebaseSimpleLogin的模块。它真的和错误信息一样简单。

检查AngularFire的快速入门,它在adding authentication时没有列出任何其他依赖项。简单地删除那个无关的依赖,你应该好好去。

对于后台,模块服务是不同的概念。模块可以包含多个服务。 AngularFire模块名为firebase,它包含$firebase$firebaseSimpleLogin$FirebaseArray$FirebaseObject服务工厂。

另请注意,$firebaseSimpleLogin将会消失,并在下周即将发布的0.9版本中被$firebaseUser替换。