【发布时间】:2019-05-31 07:56:48
【问题描述】:
我为我的两个项目安装了相同的包。那个包(不会链接,它是私有的)具有 react-popper 作为依赖项(按顺序具有 create-react-context 作为依赖项),因此,当我运行项目一时 - 一切正常,但项目二出现错误:
./node_modules/react-popper/lib/esm/Manager.js 中的错误 找不到模块:错误:无法解析“/../node_modules/react-popper/lib/esm”中的“create-react-context”
经过一番调查,我发现 node_modules 结构不同:
对于项目二,所有 react-popper 依赖项保存在 ../react-popper/node_modules 本地文件夹中:
我尝试了一些常见的方法,例如重新安装节点模块,清除缓存等,但结构是相同的。其实我对 webpack 和 babel 版本是有想法的,但我认为它不会影响 node_modules 结构本身。
所以问题是,哪些因素会影响它?我应该检查什么?
注意:如果我手动将 create-react-context 添加到项目二,它可以正常工作,但这不是解决方案。
注意:我发现了类似的问题,但没有建议 - Why does npm install packages in different directories?,我的情况是重新创建 yarn.lock 也有帮助,但它看起来也不是正确的解决它的方法。希望我的描述更完整,并有助于弄清楚。
【问题讨论】:
标签: javascript node-modules yarnpkg