![](/img/trans.png)
[英]No podspec found for `React` in `../node_modules/react-native`
[英]npm install clear the react-native in node_modules
嘗試使用npm install
將redux
安裝到我的react-native
項目時遇到問題。 每當我運行npm install redux --save
, node_modules
的react-native
目錄node_modules
將被清除。
然后我使用rm -rf node_modules && npm install
所有react-native
包都沒有安裝在node_modules
所以我必須重新創建項目。
我還嘗試將node_modules
react-redux
和redux
從另一個項目復制並過去復制到我當前的react-native
項目。 但它無法成功,該錯誤將我引向了 github 上的問題。 我遵循了這個幫助,但它也失敗了。
一些其他信息:
➜ npm: 5.0.3
➜ react-native-cli: 2.0.1
➜ 反應原生:0.45.0
➜ package.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 模塊。
解決方法:
rm -rf node_modules && npm install
npm install redux
(npm v5 默認情況下將 --save )安裝 redux 而不刪除現有模塊什么是 package-lock.json?
npm v5 有很多更改,您可以在此處閱讀。 其中之一是每當 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
),您會注意到三件事:
所以,再次運行rm -rf node_modules && npm install
不會解決問題,因為 package-lock.json 文件(記得只有 redux 和它的依賴被保存到文件中?你可以檢查舊的 package-lock.json)
希望這可以幫助別人。
最后,我通過2個步驟解決了這個問題:
1)創建一個reactjs項目並安裝redux
2) 復制步驟 1 中node_modules
所有內容並粘貼到我當前的react-native
項目中。
重新加載應用程序。 一切正常。
如果您使用紗線創建應用程序,它將被刪除。 如果您使用 yarn 創建了應用程序,請運行 yarn add react-redux 而不是 npm install react-redux
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.