Javascript 约曼:安格拉斯,;facebook SDK,页面未加载
所以我是Angular的新手,我下载了Yeoman scaffolding for Angular.JS来处理它。 我正在尝试使用此库实现Facebook登录: 没有加载任何内容,控制台也没有反映任何内容。我几乎可以肯定,这个问题与将facebook依赖注入控制器有关。 我的main.js文件中有:Javascript 约曼:安格拉斯,;facebook SDK,页面未加载,javascript,facebook,angularjs,yeoman,mean-stack,Javascript,Facebook,Angularjs,Yeoman,Mean Stack,所以我是Angular的新手,我下载了Yeoman scaffolding for Angular.JS来处理它。 我正在尝试使用此库实现Facebook登录: 没有加载任何内容,控制台也没有反映任何内容。我几乎可以肯定,这个问题与将facebook依赖注入控制器有关。 我的main.js文件中有: angular.module('circeApp', ['ezfb']) .controller('MainCtrl', function($scope, ezfb, $window, $loc
angular.module('circeApp', ['ezfb'])
.controller('MainCtrl', function($scope, ezfb, $window, $location) {
updateLoginStatus(updateApiMe);
$scope.login = function(){
ezfb.login(function(response){
if(response.authResponse){
updateLoginStatus(updateApiMe);
}
}, {scope: 'email,user_likes'});
};
$scope.logout = function(){
ezfb.logout(function(){
updateLoginStatus(updateApiMe);
});
};
function updateLoginStatus(more){
ezfb.getLoginStatus(function(response){
$scope.loginStatus = response;
(more || anular.noop)();
});
}
function updateApiMe(){
ezfb.api('/me', function(response){
$scope.apiMe = response;
});
}
});
在我的app.js文件中:
'use strict';
angular.module('circeApp', [
'ngCookies',
'ngResource',
'ngSanitize',
'ngRoute',
'ezfb'
])
.config(function ($routeProvider, $locationProvider, $httpProvider, ezfbProvider) {
$routeProvider
.when('/', {
templateUrl: 'partials/main',
controller: 'MainCtrl'
})
.when('/login', {
templateUrl: 'partials/login',
controller: 'LoginCtrl'
})
.when('/signup', {
templateUrl: 'partials/signup',
controller: 'SignupCtrl'
})
.when('/settings', {
templateUrl: 'partials/settings',
controller: 'SettingsCtrl',
authenticate: true
})
.otherwise({
redirectTo: '/'
});
$locationProvider.html5Mode(true);
// Intercept 401s and redirect you to login
$httpProvider.interceptors.push(['$q', '$location', function($q, $location) {
return {
'responseError': function(response) {
if(response.status === 401) {
$location.path('/login');
return $q.reject(response);
}
else {
return $q.reject(response);
}
}
};
}]);
})
.run(function ($rootScope, $location, Auth) {
// Redirect to login if route requires auth and you're not logged in
$rootScope.$on('$routeChangeStart', function (event, next) {
if (next.authenticate && !Auth.isLoggedIn()) {
$location.path('/login');
}
});
//Configure ezfb provider aqui
ezfbProvider.setInitParams({
appId: 'XXXXXXXXXXXX',
status: true,
cookie: true,
xfbml: true
});
});
在此之前,页面呈现,但控制台告诉我:“参数'MainCtrl'不是函数,未定义”。我修复了一个缺少的括号,并确保ezfb包含在angular.module中。现在,我得到的只有一张空白页。你能解决这个问题吗?我想我也被困在了同一个地方。是的,我停止使用ezfb,使用passport.js:)在我看来更简单。