PDF.js HTA,承诺被拒绝

PDF.js HTA, promise being rejected

我正在尝试开发一个 HTA,用于为大型办公室中的许多人从 PDF 文件中提取和处理数据。我一直在研究为此使用 PDF.js 包,但我无法让它工作。

我已经 forked the project 并创建了一个包含 compatibility.js 文件的 helloworld 示例的 HTA 版本。我可以通过 gulp 服务器获得在 Firefox 和 IE11 上运行的 HTML 版本,但是 HTA 没有给出任何输出——没有文本,没有错误消息。

在源文件中加入 alert() 语句后,我发现原来的 hello.js 文件缺少 promise reject 函数,添加时会触发,但在这里我遇到了限制据我所知。我真的不太了解承诺,所以我不明白为什么这个会失败。这是可解决的还是意味着该包根本不会 运行 在 HTA 中?


编辑:

我对此进行了更多调查,失败没有意义。

通过跟踪逻辑,hello.js 文件从 api.js 调用函数 api.getDocument。在此之后,只有一个 return 语句,并且该行之前的警告语句是 运行ning。但是完成的功能没有触发。

根据我非常有限的理解,promise 的失败子句将从异步操作中的 throw() 语句触发。如果是这种情况,那么我希望该操作立即停止并触发拒绝功能,但为什么 return 语句之前的行仍然是 运行?

我确实追求一种理论,即 api.js 中的这一行是抛出错误的那一行:

}).catch(task._capability.reject);

为了检查这一点,我在util.js中的reject()函数语句中添加了一个alert语句,但它没有触发,所以我不知道错误来自哪里。

有没有人能给我任何额外的指示来帮助我追查这个问题?

已解决!

通过将兼容性设置更改为 IE10 而不是 IE9(我不知道我能做到),我在正确的地方得到了一个更有用的错误。进一步研究这个问题,这个问题似乎与这个问题重复:

Access denied in IE 10 and 11 when ajax target is localhost