【问题标题】:NPM modules get required from /Users/node_modules/ instead of the project directory从 /Users/node_modules/ 而不是项目目录需要 NPM 模块
【发布时间】:2016-05-10 21:47:42
【问题描述】:

我的 react-native 项目一直运行良好,直到我将 react-native 从 0.17 升级到 0.18 再升级到 0.19。

自从升级任何模块(例如 app-module-path)后,我:

  1. 使用 npm 成功安装 - npm install --save app-module-path

  2. 在我的代码中添加require('app-module-path').addPath(__dirname);

运行模拟器时报如下错误:

Unable to resolve module from /Users/MyUserName/myfolder/projectname/node_modules/app-module-path/lib/index.js: Invalid directory /Users/node_modules/module

它似乎在错误的路径中寻找模块。我尝试清除所有缓存,卸载重新安装 react-native,然后重新启动我的机器,甚至从头开始一个干净的项目,但问题仍然存在。

我已经尝试了官方问题上发布的所有解决方案,但没有任何运气: https://github.com/facebook/react-native/issues/4968

npm:3.3.12 反应原生:0.19 OSX:10.11.2 守望者:稳定 4.1.0(瓶装),HEAD

我正在寻找任何类型的解决方案来修复我的环境而不会丢失我的代码以及我在 XCode 和 Android 项目中所做的所有集成以添加一些模块。

非常感谢您!

【问题讨论】:

  • 我从来不需要在 require 语句的末尾添加 .addPath(__dirname);。这可能是问题吗?你试过删除它吗?
  • 我遇到了同样的问题...尝试了我能找到的一切,包括降级到 NPM 2、删除并重新安装我的 node_modules 文件夹等...任何帮助将不胜感激。

标签: node.js macos npm react-native


【解决方案1】:

似乎很多人都没有解决这个问题:

https://github.com/facebook/react-native/issues/4968

我无法安装和使用任何其他 npm 包作为模块。

模块路径正确。我将 xcode 中显示的路径剪切并粘贴到终端中,以测试路径是否有效且正确。

使用:

  • OS X 10.11.3
  • npm 3.3.12
  • 节点 v5.5.0
  • react-native-cli: 0.1.10
  • 反应原生:0.21.0
  • xcode 7.2.1

没有任何解决方法有帮助,包括:

  • npm3
  • rm -rf 节点模块
  • npm 从 ./node_modules/react-native 开始。
  • watchman watch-del-all
  • rm -fr $TMPDIR/react-*
  • npm 缓存清理 && npm
  • install 从头开始​​创建新项目
  • 修改react-native/packager/react-packager/src/Resolver/index.js:98

    -shouldThrowOnUnresolvedErrors: (, platform) => platform === 'ios', +shouldThrowOnUnresolvedErrors: (, platform) => { return false; },

如何在不使用额外的 npm 包的情况下在 react-native 中完成任何工作?

【讨论】:

    【解决方案2】:

    Node js 有一组可能包含模块的文件夹。当您安装一个模块时,有时模块可能依赖于其他模块。您必须安装此依赖项手册。例如,如果错误类似于 /Users/node_modules/module 您必须安装“npm install -S module”。它在 /Users/node_modules 中将错误显示为缺少路径,因为这是数组的最后一个元素,其中包含可能包含模块的路径(对于 MAC)。

    按操作系统列出的完整路径列表:https://www.npmjs.com/package/npm-paths

    【讨论】:

      猜你喜欢
      • 2013-03-11
      • 1970-01-01
      • 2017-09-04
      • 2016-04-23
      • 2015-11-16
      • 1970-01-01
      • 2021-11-23
      • 2014-02-10
      • 1970-01-01
      相关资源
      最近更新 更多