SDK Facebook untuk JavaScript dengan AngularJS

Anda dapat mengintegrasikan SDK Facebook untuk JavaScript dengan AngularJS. Namun demikian, karena SDK kami harus bekerja untuk web dan tidak untuk kerangka kerja khusus, maka kami tidak menawarkan modul AngularJS.

Memuat SDK Facebook untuk JavaScript

Guna menambahkan SDK Facebook untuk JavaScript ke aplikasi Anda, kami menyarankan agar Anda mengikuti cara autentikasi Facebook di aplikasi web AngularJS Anda atau panduan lain yang ditampilkan di https://docs.angularjs.org/guide.

Gunakan SDK versi terbaru

Ketika mengikuti panduan, pastikan untuk memuat file SDK terbarusdk.js:

// 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";

dan berikan versi API Graf (saat ini v2.4) di panggilan FB.init():

$window.fbAsyncInit = function() {
    FB.init({ 
      appId: '{your-app-id}',
      status: true, 
      cookie: true, 
      xfbml: true,
      version: 'v2.4'
    });
};

Menangani Callback

SDK Facebook untuk JavaScript tidak mendukung konsep promise. Sebagai solusi sementara, Anda dapat mengemas panggilan-panggilan SDK Facebook untuk JavaScript (misalnya) ke dalam sebuah layanan:

// ...
.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;
        }
    }
});

Gunakan layanan tersebut, misalnya seperti ini:

$scope.getMyLastName = function() {
   facebookService.getMyLastName() 
     .then(function(response) {
       $scope.last_name = response.last_name;
     }
   );
};

Perpustakaan Pihak Ketiga

Terdapat banyak perpustakaan pihak ketiga yang menyederhanakan penggunaan SDK Facebook untuk JavaScript yang dapat Anda temukan di halaman Panduan AngularJS.