首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >在我的文件夹外未找到本地依赖项的获取NPM模块

问在我的文件夹外未找到本地依赖项的获取NPM模块
EN

Stack Overflow用户
提问于 2018-07-22 18:31:52
回答 1查看 2.3K关注 0票数 0

我有一个项目,看起来像这样:

代码语言:javascript
复制
|-- client
|   |-- index.js
|   |-- ...
|   |-- package.json
|   └-- webpack.config.json
|-- lib
|   └-- myLocalLibrary
|       |-- index.js
|       └-- package.json
└-- server
    └-- ...

通过使用npm导入库,可以在client和server中使用来自lib的代码

因此client/package.json和server/package.json包含:

代码语言:javascript
复制
{
  dependencies: {
    ...
    myLocalLibrary: 'file: ../lib/myLocalLibrary',
    ...
  } 
}

问题是:当我在客户端运行webpack时,它无法解析myLocalLibrary中使用的导入,因为:

a) NPM在client/node_modules而不是lib/myLocalLibrary/node_modules中为本地库安装子依赖项

b)使用client/node_modules无法访问的源文件夹,为myLocalLibrary解析代码

在这种情况下我应该怎么做?

EN

回答 1

Stack Overflow用户

发布于 2018-07-22 18:45:34

如果您正在使用webpack作为构建工具,我认为您必须使用resolve.alias webpack配置。如果我们使用webpack将所有文件连接到一个entry文件,那么我们在生产环境中就不需要node_modules了。在您的webpack配置中:

代码语言:javascript
复制
module.exports = {
  //...
  resolve: {
    alias: {
      myLocalLibrary: path.resolve(__dirname, 'lib/myLocalLibrary'), // where is the webpack.config.json?
    }
  }
};

https://webpack.js.org/configuration/resolve/

票数 -1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/51464203

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档