0
私はAngularJSでFacebookログインAPIを使用しようとしています。しかし、私は変数を更新することができません。AngularJSのグローバル変数が更新されない
$scope.init = function() {
$scope.name = ""
window.fbAsyncInit = function (response) {
FB.init({
appId: 'xxxxxxxxxxxxxxxxxxx',
xfbml: true,
version: 'v2.7'
});
FB.getLoginStatus(function (response) {
if (response.authResponse) {
//Calling Fb graph api if user is log in and fetching name of user
FB.api('/me', {
fields: 'name'
}, function (response) {
$scope.name = response.name;
console.log($scope.name); // 1
});
console.log($scope.name); // 2
}
});
};
console.log($scope.name); // 3
}
第console.log()
即ちのみFB.api
に、$scope.name
に正しいデータを示しています。しかし、他は更新された価値を示さない。
まず、3行目の最後にセミコロンがない理由はありますか?第二に、明白な確認のリスクで... FB.apiの呼び出しがエラーにならないようにコンソールをチェックインしていますか? – dat
[非同期呼び出しからの応答を返すにはどうすればよいですか?](http://stackoverflow.com/questions/14220321/how-do-i-return-the-response-from-an-asynchronous-call) – JLRishe