gpt4 book ai didi

react-native - npm install 清除 node_modules 中的 react-native

转载 作者:行者123 更新时间:2023-12-04 03:58:37 27 4
gpt4 key购买 nike

尝试使用 npm install 时遇到问题安装redux给我的react-native项目。任何时候我运行npm install redux --save react-native node_modules 内的目录将被清除。

然后我使用 rm -rf node_modules && npm install全部react-native软件包未安装在 node_modules 内所以我必须重新创建项目。

我也尝试复制并过去 react-reduxreduxnode_modules从另一个项目到我现在的react-native项目。但它不能成功,错误导致我到 issue在github上。我遵循了这个帮助,它也失败了。

其他一些信息:

➜ npm:5.0.3

➜ react 原生 cli:2.0.1

➜ react 原生:0.45.0

➜ 包.json

{
"name": "MyProjectNAME",
"version": "0.0.1",
"private": true,
"scripts": {
"start": "node node_modules/react-native/local-cli/cli.js start",
"test": "jest"
},
"dependencies": {
"react": "16.0.0-alpha.12",
"react-native": "0.45.0",
"react-redux": "^5.0.5",
"redux": "^3.6.0"
},
"devDependencies": {
"babel-cli": "^6.24.1",
"babel-jest": "20.0.3",
"babel-preset-es2015": "^6.24.1",
"babel-preset-es2017": "^6.24.1",
"babel-preset-react-native": "1.9.2",
"jest": "20.0.4",
"react-test-renderer": "16.0.0-alpha.12"
},
"jest": {
"preset": "react-native"
}
}

任何建议表示赞赏。谢谢

最佳答案

很高兴您使用解决方法解决了这个问题,但请允许我解释一下为什么在运行 npm install redux --save 时删除了 react-native 模块。 .

解决方案:

  • 将 package-lock.json 从项目文件夹中移出(不要删除它,因为您稍后需要检查它)
  • 运行rm -rf node_modules && npm install
  • 检查/node_modules 和 react-native 现在应该在那里
  • 运行npm install redux (npm v5 默认会 --save) 安装 redux 而不移除现有模块

  • 什么是 package-lock.json?

    npm v5 有很多变化,你可以阅读 here .其中之一是每当 npm 修改/node_modules 或 package.json 时生成 package-lock.json (lockfile)。

    使用 package-lock.json,运行 npm install 的任何人(v5) 将获得与您正在开发的完全相同的 node_modules 树。因此,您也必须提交此文件。

    为什么 react-native 模块和其他模块在运行后被删除 npm install somePackageName甚至它们是在 package.json 中定义的?

    删除是因为您现有的节点模块是在 npm v5 之前安装的。如果您使用 npm v5 安装模块(例如 npm install redux ),您会注意到三件事:
  • package-lock.json 将被生成(如果存在则更新)。 Redux 及其依赖项保存在其中。
  • redux 的 package.json 与 npm v5 之前安装的节点模块不同(一些额外的字段以 _ 为前缀,例如 _from、_requiredBy、_resolved 等)。
  • 最后,任何在 v5 之前安装的模块都将被删除,我猜这是因为它的 package.json 中缺少额外的字段。和 新生成的 package-lock.json 中不存在。

  • 所以,运行 rm -rf node_modules && npm install由于 package-lock.json 文件再次无法解决问题(还记得只有 redux 及其依赖项被保存到文件中吗?您可以检查旧的 package-lock.json)

    希望这可能对其他人有所帮助。

    关于react-native - npm install 清除 node_modules 中的 react-native,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/44472878/

    27 4 0
    Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
    广告合作:1813099741@qq.com 6ren.com