此示例显示了如何集成Web的PSPDFKIT并创建PWA(渐进Web应用程序)。
您可以在此处查看实时预览:pspdfkit.com/pwa。
该示例应用程序具有基本的PWA设置,包括清单和服务工作者,允许您的应用程序脱机以及PDF的索引DB存储。这样,即使关闭浏览器后,您的文件也会持续。
在此示例中,我们使用Workbox,这是Google流行的PWA框架。
PSPDFKIT通过https://pspdfkit.com/support/request/为客户提供主动SDK许可证的客户支持
您在评估我们的SDK吗?太好了,我们很乐意提供帮助!为了确保这很快,请使用一封工作电子邮件,并让您公司的某人填写我们的销售表:https://pspdfkit.com/sales/
克隆回购:
git clone https://github.com/PSPDFKit/pspdfkit-web-example-pwa.git
cd pspdfkit-web-example-pwa使用npm安装项目依赖性:
npm install现在已经安装了所有内容,我们需要配置该应用程序以将我们的PSPDFKIT用于Web License密钥。
编辑./config/license-key ,然后用您通过电子邮件收到的许可证密钥替换字符串YOUR_LICENSE_KEY_GOES_HERE 。
我们准备启动该应用程序! ?
在开发模式下运行应用程序:
npm run start要构建生产版本,只需遵循以上指南,而不是运行start :
npm run build然后,构建脚本将创建一个名为./dist的文件,您可以将其复制到Web服务器AS-IS。
在./src下,您可以找到一个简单的应用程序外壳,该壳为Web加载PSPDFKIT。
该申请使用服务人员为大多数资产提供离线支持和预处理。
为了减少样板的数量,我们使用工作箱 - Google的图书馆,该图书馆抽象了与服务工作者创建和配置相关的一些冗长。
我们还使用Google的另一个库Wookbox-CLI在运行npm start时自动为我们的ServiceWorker Pre-Cache生成清单文件。您可以在./src/workbox-config.js中找到此配置文件。
为了允许PDF在本地持续存在,因此不需要再次下载它们,我们已经创建了PSPDFKitFileStore库。它在引擎盖下使用了称为idb的IndexEdDB API周围使用轻巧且具有Promise的包装器。该代码旨在独立于PWA示例工作,也可以在Internet Explorer 11中使用。
如果您尝试远程连接到本地开发服务器,您会很快看到PWA无法正常工作。这是由于PWA API需要有效的SSL/TLS证书才能正常运行,因此您可能在本地没有此设置。
为了获得更好的体验,我们建议您查看托管的PWA示例或将生产构建部署到自己的服务器。
该软件是根据修改后的BSD许可证获得许可的。
请确保您已经签署了我们的CLA,以便我们可以接受您的贡献。