Du kannst das Facebook-SDK für JavaScript in AngularJS integrieren. Da unser SDK aber für das Web und nicht für ein bestimmtes Framework funktionieren muss, bieten wir kein AngularJS-Modul an.
Um das Facebook-SDK für JavaScript deiner App hinzuzufügen, empfehlen wir, der Anleitung zur Facebook-Authentifizierung in deiner AngularJS-Web-App oder anderen Leitfäden unter https://docs.angularjs.org/guide zu folgen.
Unabhängig davon, welchem Leitfaden du folgst, musst du darauf achten, die aktuellste SDK-Dateisdk.js
zu laden:
// Old SDK (deprecated) js.src = "https://connect.facebook.net/en_US/all.js"; // New SDK (v2.x) js.src = "https://connect.facebook.net/en_US/sdk.js";
und eine Graph API-Version (derzeit v2.4
) im FB.init()
-Aufruf anzugeben:
$window.fbAsyncInit = function() { FB.init({ appId: '{your-app-id}', status: true, cookie: true, xfbml: true, version: 'v2.4' }); };
Das Facebook-SDK für JavaScript unterstützt keine Promises. Stattdessen kannst du deine Aufrufe des Facebook-JavaScript-SDK (beispielsweise) in einem Dienst bündeln:
// ... .factory('facebookService', function($q) { return { getMyLastName: function() { var deferred = $q.defer(); FB.api('/me', { fields: 'last_name' }, function(response) { if (!response || response.error) { deferred.reject('Error occured'); } else { deferred.resolve(response); } }); return deferred.promise; } } });
Verwende den Dienst z. B. wie folgt:
$scope.getMyLastName = function() { facebookService.getMyLastName() .then(function(response) { $scope.last_name = response.last_name; } ); };
Auf der Seite mit dem AngularJS-Leitfaden werden außerdem mehrere Drittbibliotheken aufgelistet, die die Nutzung des Facebook-SDK für JavaScript vereinfachen.