升级到1.9.426版后pdf.js找不到pdf.worker.js

时间:2018-10-18 06:41:04

标签: javascript requirejs pdf.js

我们使用的先前版本是1.1.114,并且我们的设置运行良好。 我们将pdf.js和pdf.worker.js放在同一目录(Scripts / Libs / Common)下,并在main.js上,定义了PDFJS.workerSrc的路径。

我们决定升级到v1.9.426,因为我们已经解决了一些问题,但这是问题所在:error on console

发生此错误是因为pdf.js找不到pdf.worker.js。 当前,我的解决方法是将pdf.js和pdf.worker.js上的路径更新为我们放置这两个文件的目录。 这些是我已更新的部分:

if (typeof requirejs !== 'undefined' && requirejs.toUrl) {
   workerSrc = requirejs.toUrl('pdfjs-dist/build/pdf.worker.js');
}
var dynamicLoaderSupported = typeof requirejs !== 'undefined' && 
requirejs.load;
fakeWorkerFilesLoader = useRequireEnsure ? function (callback) {
    require.ensure([], function () {
    var worker;
    worker = require('./pdf.worker.js');
    callback(worker.WorkerMessageHandler);
});
} : dynamicLoaderSupported ? function (callback) {
    requirejs(['pdfjs-dist/build/pdf.worker'], function (worker) {
    callback(worker.WorkerMessageHandler);
});
} : null;

(function webpackUniversalModuleDefinition(root, factory) {
    if(typeof exports === 'object' && typeof module === 'object')
        module.exports = factory();
    else if(typeof define === 'function' && define.amd)
        define("pdfjs-dist/build/pdf.worker", [], factory);
    else if(typeof exports === 'object')
        exports["pdfjs-dist/build/pdf.worker"] = factory();
    else
        root["pdfjs-dist/build/pdf.worker"] = 
        root.pdfjsDistBuildPdfWorker = 
        factory();
})

为什么对新版本的路径进行硬编码? 我应该如何正确解决这个问题?

0 个答案:

没有答案