我正在尝试将 Expo、React 和 React-Native 安装为项目的依赖项。 package.jason
是这样的:
"main": "node_modules/expo/AppEntry.js",
"private": true,
"dependencies": {
"expo": "^28.0.0",
"expo-three": "^3.0.0-alpha.2",
"react-native": "0.48.3",
"react": "15.0.0",
"three": "^0.93.0"
}
问题是每个包都需要一个特定版本的 dep 和 peer dep!。通过安装特定版本的包,其他人会抛出错误。
├── expo@28.0.0
├── expo-three@3.0.0-alpha.2
├── UNMET PEER DEPENDENCY react@15.0.0
├── react-native@0.48.3
└── three@0.93.0
npm ERR! peer dep missing: react@> 15.0.0, required by react-native-gesture-handler@1.0.4
npm ERR! peer dep missing: react@^16.0, required by react-native-maps@0.21.0
npm ERR! peer dep missing: react@16.0.0-alpha.6, required by react-native-reanimated@1.0.0-alpha.3
我以为我可以安装最新版本并支持所有,但没有成功。
最佳答案
我创建了一个项目,其中的 package.json 仅包含您共享的包,我使用 npm
版本 6.1.0
这意味着您应该安装比 package.json 中的版本更新的版本
例如,"react-native": "0.48.3",
requires the react version 16并且您使用的是版本 15。
如果更新到 "react": "16.3.0"
和 "react-native": "0.54.0"
大部分问题都可以解决。但是,请确保您可以执行此更新,将 React 从 15 更新到 16 时有一些注意事项。
关于javascript - 需要不同版本的包,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/51162121/