我正在使用pdf.js.我想编写一个返回angular promise而不是pdf.js返回的本机javascript promise的包装器。到目前为止,这是我的代码。
this.hasPassword = function (url) {
return PDFJS.getDocument(url, null, null, null).then(function (res) {
if (res.pdfInfo) {
return false;
}
return true;
}, function (err) {
return true;
});
};
这回归是一个javascript承诺。如何让它回归角度承诺。我可以使用$ q.defer()并解决它并返回角度承诺吗?
答案 0 :(得分:0)
我想你想做这样的事情:
function (url) {
var deferred = $q.defer();
PDFJS.getDocument(url, null, null, null).then(function (res) {
if (res.pdfInfo) {
deferred.resolve(false);
}
deferred.resolve(true);
}, function (err) {
deferred.reject(true);
});
return deferred.promise;
};