jquery - 使用带有 jquery deferred 的 fb.api 调用

标签 jquery facebook facebook-graph-api

我无法理解延迟对象

dfd = new $.Deferred();
FB.api('/me/posts?fields=id,story&access_token='+accessToken,function(response){          
    dfd.resolve();  
    //Do something with the result  
});
dfd.done(alert(dfd.isDeferred()));

根据我的理解,.done 应该只在请求完成并且回调将对象设置为已解析时触发,但是在请求完成之前警报框触发 false。

我错过了什么?

最佳答案

尝试将最后一行代码更改为:

dfd.done(function(){ alert(dfd.isDeferred()); });

这就是done()函数的使用方式documented in the jQuery API

关于jquery - 使用带有 jquery deferred 的 fb.api 调用,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8284790/

相关文章:

javascript - jQuery 脚本不会添加事件类

jquery - 如何为注销和更新配置文件功能创建悬停下拉面板?

Facebook 打开图表 - 在最近的事件日志中使用对象名称作为标题

java - 需要围绕纬度和经度位置的半径

javascript - 如何在 Facebook 垂直分享按钮旁边插入横幅

javascript - 未捕获的 TypeError : $(. ..).selectBox 不是函数

javascript - 如何检查所有四个多选是否都选择了某个值?

facebook - 如何在不让用户完全退出 Facebook 的情况下撤销应用程序授权?

流和用户详细信息的 Facebook FQL 多查询

ios - 如果用户在登录后更改了他的 facebook 个人资料详细信息,如何在我的应用程序中更新 facebook 个人资料?