Javascript 在所有FBAPI调用完成后执行某些操作

Javascript 在所有FBAPI调用完成后执行某些操作,javascript,facebook,facebook-javascript-sdk,Javascript,Facebook,Facebook Javascript Sdk,我有一些函数正在进行一些Facebook API调用,还有一个init函数: var fbAPI = { init: function () { this.friendList(), this.friendCount(); }, friendList: function (closure) { var _self = this; return FB.api( "/me/taggable_frie

我有一些函数正在进行一些Facebook API调用,还有一个init函数:

var fbAPI = {

    init: function () {
        this.friendList(), this.friendCount();
    },
    friendList: function (closure) {

        var _self = this;

        return FB.api(
            "/me/taggable_friends",
            function (data) {
                _self.setFriends(data);
                closure(data);
            }
        );
    },
    friendCount: function (closure) {

        var _self = this;

        return FB.api(
            "/me/friends",
            function (data) {
                _self.setFriendsCount(data.summary.total_count);
                closure(data);
            }
        );
    },
    friends: null,
    friendsCount: null,
    setFriends: function (data) {
      this.friends = data;
    },
    setFriendsCount: function (count) {
        this.friendsCount = count;
    }
};
当所有调用完成后,我想删除加载覆盖

比如:

 (fbAPI.init()).finish(function(){
     //do something
  });

如何实现这一点?

您应该处理所有回调。。也许试着用承诺?我不知道没有承诺怎么办。想一想,有时我会有6-7个api调用,最后我需要删除加载。然后承诺应该做你想做的。刚试过的结局并没有得到承诺init:function(closure){var p1=newpromise(this.friendList());var p2=newpromise(this.friendCount());Promise.all([p1,p2])。然后(function(a,b){closure();})`