【问题标题】:Implementing PDF.js Viewer example实现 PDF.js 查看器示例
【发布时间】:2019-03-07 15:11:55
【问题描述】:

我在尝试实现找到here 的 PDF.js 查看器演示时遇到了问题,但我一直遇到未设置某些属性的问题。检查控制台有两个错误:

第一个错误:

app.js:883 Uncaught (in promise) TypeError: Cannot read property 'setPagesCount' of null
at Object.load (app.js:883)
at app.js:666

第二个错误:

app.js:870 Uncaught (in promise) TypeError: Cannot read property 'then' of undefined
at app.js:870

我尝试通过自己深入研究代码来解决此问题,并将其与示例进行比较,但没有成功。我还在网上环顾四周,试图弄清楚为什么会发生这种情况,但仍然空手而归。在我看来,this.toolbar 没有在first error 中设置任何内容,但我不知道为什么会这样。

通过在线查看,我相信我设置正确,但不是 100% 肯定。这是我的设置:

<script type="text/javascript">
    $(document).ready(function () {
        var pdfDoc = '@pdf';

        // Open the default file after the document is ready. Otherwise, PDFViewerApplication probably won't exist.
        PDFViewerApplication.open(pdfDoc);
    });
</script>

以前有没有人遇到过这种情况并且可以提供帮助?如果没有,有谁知道我可以从哪里开始看?

另外需要注意的是,我已将文件移到其原始 buildweb 目录之外。我以为我更改了viewer.js 中的配置路径以适应这种情况,但也许我错过了?

【问题讨论】:

  • @Juky:感谢您的评论。您的实现确实可以用作基本查看器。但是,它失去了我发布的演示所具有的许多功能。实际上我刚刚解决了我的问题并将发布我的答案。

标签: javascript pdf.js


【解决方案1】:

看来我的问题是我没有在我的HTML 中添加locale.properties 的链接资源。结果发现我遇到的第一个错误更像是一个红鲱鱼,并且能够通过关注第二个错误来解决这个问题。

我添加了这个:

<link rel="resource" type="application/l10n" href="[your path to]/locale/locale.properties">

查看器的所有HTML 所在位置并立即加载。

【讨论】:

猜你喜欢
  • 2014-10-04
  • 2014-11-07
  • 2019-11-06
  • 2015-02-20
  • 2014-06-16
  • 2017-01-29
  • 2022-01-17
相关资源
最近更新 更多