javascript Webpack更改特定包的导入路径

vs91vp4v  于 2023-05-16  发布在  Java
关注(0)|答案(3)|浏览(196)

让我们假设,我们确实有一些js库,安装到我们的捆绑包中。而且,由于某种原因,我需要使用一个库的node_modules中的库。我可以通过导入

import thing from 'somelib/node_modules/thing';

我只想做:

import thing from 'thing';

但在幕后,webpack会知道-路径应该是'somelib/node_modules/thing'
我如何在我的webpack配置文件中更改/覆盖特定的导入路径,以便我的节点从我想要的目的地为我带来一个包?

zvms9eto

zvms9eto1#

我想你是在寻找解决方案。别名
https://webpack.js.org/configuration/resolve/#resolve-alias

wydwbb8l

wydwbb8l2#

在webpack配置中,指定resolv.modules
webpack文档中的这个例子添加了“src”文件夹。

module.exports = {
  //...
  resolve: {
    modules: [path.resolve(__dirname, 'src'), 'node_modules']
  }
};

或者,如果你真的不希望这影响你的其他入口点,你可以创建单独的webpack配置。(它们仍然可以从主文件导入设置),允许您为每个入口点独立设置resolve.aliasesresolve.modules

gk7wooem

gk7wooem3#

module.exports = {
  //...
  resolve: [
    function() {
      regexNpmPgkName.test(xxx) {
         callback()
      }
    }

  ]
};

相关问题