【发布时间】:2015-03-06 15:04:20
【问题描述】:
google api 的 google gapi.client.load 可以返回一个承诺,如 here 所讨论的那样。但是,如果您希望使用云端点将 javascript 客户端用于您自己的应用程序引擎组件,gapi.client.load 具有不同的方法签名,如以下角度帖子所示:
gapi.client.load('guestbook', 'v1', function() {
$scope.is_backend_ready = true;
$scope.list();
}, '/_ah/api');
这里还有第四个参数,不是成功函数。所以我不确定如何使用promise。
【问题讨论】:
-
你能简单地将它包装在一个承诺中吗?
-
我假设,因为谷歌的文档说它返回一个承诺,你可以。
-
我的意思是你为什么不包装它?您可以检查
load的返回是否是一个函数,这意味着它返回一个承诺。否则你可以使用$q.when包裹它。 -
按原样使用是否有缺点,例如:gapi.client.load(apiName, apiVersion).then(somefunction, errorFunction)?
-
如果
client.load遵循Promises的规范,我认为没有问题。因为它是一个谷歌图书馆,我认为它确实如此。
标签: javascript angularjs google-app-engine google-cloud-endpoints