Adobe PDF Embed apis.gotoLocation() 强制 pdf 刷新

Adobe PDF Embed apis.gotoLocation() forces pdf to refresh

Adobe PDF Embed 似乎总是重新加载 pdf 而不是仅仅导航到正确的页面(就像在 iframe 中更改页码一样)。有解决办法吗?

正在使用的代码: previewFilePromise.then(adobeViewer => {

    adobeViewer.getAPIs().then(apis => {
            apis.gotoLocation(n)
                    .then(() => console.log("Success"))
                    .catch(error => console.log(error));
     });

});

我没有看到这种行为,但我处理这个问题的方式有点不同。我只获得 API 一次,然后如下所示重用该对象。 link 功能示例在代码片段之后。

 var viewerAPI = null;
 function showPDF(urlToPDF) {
      var adobeDCView = new AdobeDC.View({
           clientId: clientId,
           divId: "embeddedView"
      });
      previewFilePromise = adobeDCView.previewFile(
           {
                content: { promise: fetchPDF(urlToPDF) },
                metaData: { fileName: urlToPDF.split("/").slice(-1)[0] }
           },
           viewerOptions
      );
      previewFilePromise.then((adobeViewer) => {
           adobeViewer.getAPIs().then((apis) => {
                viewerAPI = apis;
           });
      });
 }

 function goToPage(pageNum) {
      viewerAPI.gotoLocation(parseInt(pageNum));
 }

Full Codepen