Angular中的第二个控制器没有提示FB登录

时间:2014-01-10 06:02:27

标签: facebook node.js angularjs firebase

我之前使用过角度,但这是我第一次设置它。

我正在努力让Firebase简单登录与Angular,Node和Express一起使用。我的目标是,当用户点击登录按钮时,他们会使用他们的Facebook登录应用程序(稍后会添加Twitter和电子邮件+密码)。

问题是,当我点击登录时,会从主控制器触发页面(和警报)的事件,但不是我设置的控制器。我已经尝试在app.config()部分添加/更改控制器,使用过去的代码,从头开始,在无数的教程之后移动名称,甚至做一个简单的基本情况来拥有console.log。仍然没什么,我可能完全误解了事情,但我怎么能让这个工作?

脚本文件:

var app = angular.module('myApp', 
    ['ngRoute', 'app.controllers', 'app.directives', 'firebase', 'ngTouch']);

app.config(function ($routeProvider) {
  $routeProvider
    .when('/', {
      templateUrl: 'templates/index.html',
      controller: 'MyCtrl'
    })
    .otherwise({
      redirectTo: '/home'
    });
});

var controllers = angular.module('app.controllers', []);

controllers.controller('MyCtrl', ['$scope', 'angularFire',
  function($scope, angularFire) {

    var users = new Firebase('https://test.firebaseio.com');
    //angularFire(users, $scope, "users");s

    $scope.$on('$locationChangeStart', function (event) {
      event.preventDefault();
      console.log('sdfiojdsfdsf');
                alert('dsifjosdf');
            });

}]);

controllers.controller("MyAuthCtrl", ["$scope", "$rootScope", "$firebaseAuth",
  function($scope, $firebaseAuth) {

    var ref = new Firebase("https://test.firebaseio.com");
    $scope.auth = $firebaseAuth(ref);
    // $scope.auth.user will be `null` until the user logs in.

    $rootScope.$on("$firebaseAuth:login", function(evt, user) {
      console.log("User " + user.id + " successfully logged in!");
    });

    $rootScope.$on("$firebaseAuth:logout", function(evt) {
      console.log("User logged out!");
    });

}]);

HTML

<div ng-controller="MyAuthCtrl">
    <ul>
        <li>&nbsp;</li>
        <li> <a href="#" id="fblogin" ng-click="auth.$login('facebook')">Login Facebook</a></li>
        <li>&nbsp;</li>
        <li><a href="#" ng-click="auth.logout()">Log Out</a></li>
    </ul>
</div>

由于

0 个答案:

没有答案