webpack-resolve-alias解决Dependecy的子依赖

时间:2019-01-14 06:17:40

标签: vue.js webpack node-modules vue-cli pdfjs

我有点想解决一个问题,并且搜索了大约三个小时才使我无所事事。

这是问题所在。我正在尝试基于PDF.JS lib开发自己的自定义PDF查看器。正式地,它以pdfjs-dist软件包的形式在npm上分发。但是,我需要扩展一些在pdfjs-dist中无法访问的类。因此,我npm install编辑或yarn add编辑了原始仓库https://github.com/mozilla/pdf.js.git。这样,我就可以访问所需的课程。 pdf.js中有pdf.js/src/中存储的核心库和pdf.js/web/中存储的pdf-viewer应用程序。

通过pdf.js/web/别名引用了pdfjs-lib应用核心库(pdf.js),在gulp的pdf.js内部构建过程中,别名被解析为pdf.js/src/

例如pdf.js/web/base_viewer.js

import { AnnotationLayerBuilder } from './annotation_layer_builder';
import { createPromiseCapability } from 'pdfjs-lib';
import { PDFPageView } from './pdf_page_view';

因此,现在我正尝试在使用最新Webpack 4的应用程序中导入该pdf.js/web/base_viewer.js(我想),并且此pdfjs-lib的子依赖关系尚未解决。

我已经尝试过webpack的resolve-alias机制(https://webpack.js.org/configuration/resolve/):

    resolve: {
      alias: {
        'pdfjs-lib': path.resolve(__dirname, './node_modules/pdf.js/src/')
      },
    }

...但是看起来它只能解决我自己的应用程序的依赖性,而不能解决我的依赖性的子依赖性。

以防万一我要使用vue-cli构建Vue 3.0应用并通过以下方式访问Webpack配置:https://cli.vuejs.org/guide/webpack.html,但不要紧。

这里有Webpack专家的帮助吗?

谢谢。

0 个答案:

没有答案