Sat*_*lam 20 javascript node.js npm react-native
我的情况是这样的:
我有一份运作良好的反应原生项目的工作副本.它已经提交到我的git存储库.
我决定将react-native升级到0.26.3然后再升级到0.28,最终导致了一个很大的依赖混乱.因此决定回到以前的工作版本.恢复了变化.从我的工作目录中删除了node_modules文件夹.
但现在npm install只是不行.
我在package.json中的工作依赖项
"dependencies": {
"immutable": "^3.8.1",
"key-mirror": "^1.0.1",
"react": "^15.0.2",
"react-native": "^0.26.0",
"react-native-router-flux": "^3.26.1",
"react-redux": "^4.4.5",
"redux": "^3.5.2",
"redux-thunk": "^2.1.0",
"strformat": "0.0.7"
},
"devDependencies": {
"babel-core": "^6.10.4",
"babel-jest": "^12.1.0",
"babel-preset-es2015": "^6.9.0",
"babel-preset-react-native": "^1.9.0",
"babel-register": "^6.9.0",
"chai": "^3.5.0",
"fetch-mock": "^4.5.4",
"jest-cli": "^12.1.1",
"mocha": "^2.5.3",
"mockery": "^1.7.0",
"nock": "^8.0.0",
"redux-mock-store": "^1.1.1",
"sinon": "^1.17.4",
"sinon-chai": "^2.8.0",
"sinon-stub-promise": "^2.0.0"
}
Run Code Online (Sandbox Code Playgroud)
现在我明白了
npm ERR! peerinvalid The package react@15.1.0 does not satisfy its siblings' peerDependencies requirements!
npm ERR! peerinvalid Peer react-native@0.26.3 wants react@15.0.2
npm ERR! peerinvalid Peer react-redux@4.4.5 wants react@^0.14.0 || ^15.0.0-0
Run Code Online (Sandbox Code Playgroud)
这对我来说没有意义,因为我的反应依赖是15.0.2和react-native 0.26.0,你可以在package.json中看到.
请注意,这是来自之前正在进行的提交(整个批次).我也做了一个npm ls.古怪错误的依赖性显示在树一样的错误版本react-native,react-native-router-flux,react.
che*_*tan 18
对于现有项目,如果要安装/降级到较低版本
npm install react-native@x.x.x ex: npm install react-native@0.43.4
Run Code Online (Sandbox Code Playgroud)
这将安装指定的版本.
检查已安装的版本 react-native -version
请react在package.json中明确更新您的依赖关系15.0.2,而不是^15.0.2因为后者解决15.1.0导致此问题.建议将其保留,直到您下次升级并再次出现此错误(以避免react在此期间更改其版本并且react-native没有为此做好准备).
此外,npm3 EPEERINVALID不再是错误,而是警告.
赶紧跑
npm install react-native@0.43.8
Run Code Online (Sandbox Code Playgroud)
替换0.43.8为您需要的版本。
降级 React Native 需要手动步骤。我建议使用https://react-native-community.github.io/upgrade-helper/这是我的步骤
npx react-native-clean-project非常有帮助。yarn或者npm install为 ios 重新安装 pod建议:如果您要降级多个次要版本,那么一次降级一个版本可能会更容易。例如,从 0.61.x 降级到 0.58.x,首先降级到 0.60.x 版本会减少工作量,测试并确保 iOS 和 Android 中一切正常,然后继续
| 归档时间: |
|
| 查看次数: |
34356 次 |
| 最近记录: |