NativeBase: Cannot install NativeBase due to dependencies
Description
i cannot install native-base in my expo app and it gives out the error mentioned below
CodeSandbox/Snack link
Steps to reproduce
- type in terminal
expo install native-baseornpm install native-base - It gives out the error
npm ERR! code ERESOLVE
npm ERR! ERESOLVE unable to resolve dependency tree
npm ERR!
npm ERR! While resolving: ***********@1.0.0
npm ERR! Found: react@18.0.0
npm ERR! node_modules/react
npm ERR! react@"18.0.0" from the root project
npm ERR! peer react@"*" from native-base@3.4.16
npm ERR! node_modules/native-base
npm ERR! native-base@"*" from the root project
npm ERR!
npm ERR! Could not resolve dependency:
npm ERR! peer react@"^18.2.0" from react-dom@18.2.0
npm ERR! node_modules/react-dom
npm ERR! peer react-dom@"*" from native-base@3.4.16
npm ERR! node_modules/native-base
npm ERR! native-base@"*" from the root project
npm ERR!
npm ERR! Fix the upstream dependency conflict, or retry
npm ERR! this command with --force, or --legacy-peer-deps
npm ERR! to accept an incorrect (and potentially broken) dependency resolution.
npm ERR!
npm ERR! See C:\Users\user\AppData\Local\npm-cache\eresolve-report.txt for a full report.
npm ERR! A complete log of this run can be found in:
npm ERR! C:\Users\user\AppData\Local\npm-cache\_logs\2022-09-20T20_36_36_193Z-debug-0.log
NativeBase Version
3.4.16
Platform
- Android
- CRA
- Expo
- iOS
- Next
Other Platform
No response
Additional Information
eresolve-report.txt
# npm resolution error report
2022-09-20T20:37:52.850Z
While resolving: ******@1.0.0
Found: react@18.0.0
node_modules/react
react@"18.0.0" from the root project
peer react@"*" from native-base@3.4.16
node_modules/native-base
native-base@"3.4.16" from the root project
Could not resolve dependency:
peer react@"^18.2.0" from react-dom@18.2.0
node_modules/react-dom
peer react-dom@"*" from native-base@3.4.16
node_modules/native-base
native-base@"3.4.16" from the root project
Fix the upstream dependency conflict, or retry
this command with --force, or --legacy-peer-deps
to accept an incorrect (and potentially broken) dependency resolution.
Raw JSON explanation object:
{
"code": "ERESOLVE",
"current": {
"name": "react",
"version": "18.0.0",
"whileInstalling": {
"name": "******",
"version": "1.0.0",
"path": "C:\\Users\\user\\******\\******\\******"
},
"location": "node_modules/react",
"isWorkspace": false,
"dependents": [
{
"type": "prod",
"name": "react",
"spec": "18.0.0",
"from": {
"location": "C:\\Users\\user\\******\\******\\******"
}
},
{
"type": "peer",
"name": "react",
"spec": "*",
"from": {
"name": "native-base",
"version": "3.4.16",
"whileInstalling": {
"name": "******",
"version": "1.0.0",
"path": "C:\\Users\\user\\******\\******\\******"
},
"location": "node_modules/native-base",
"isWorkspace": false,
"dependents": [
{
"type": "prod",
"name": "native-base",
"spec": "3.4.16",
"from": {
"location": "C:\\Users\\user\\******\\******\\******"
}
}
]
}
}
]
},
"currentEdge": {
"type": "prod",
"name": "react",
"spec": "18.0.0",
"from": {
"location": "C:\\Users\\user\\******\\******\\******"
}
},
"edge": {
"type": "peer",
"name": "react",
"spec": "^18.2.0",
"error": "INVALID",
"from": {
"name": "react-dom",
"version": "18.2.0",
"whileInstalling": {
"name": "******",
"version": "1.0.0",
"path": "C:\\Users\\user\\******\\******\\******"
},
"location": "node_modules/react-dom",
"isWorkspace": false,
"dependents": [
{
"type": "peer",
"name": "react-dom",
"spec": "*",
"from": {
"name": "native-base",
"version": "3.4.16",
"whileInstalling": {
"name": "******",
"version": "1.0.0",
"path": "C:\\Users\\user\\******\\******\\******"
},
"location": "node_modules/native-base",
"isWorkspace": false,
"dependents": [
{
"type": "prod",
"name": "native-base",
"spec": "3.4.16",
"from": {
"location": "C:\\Users\\user\\******\\******\\******"
}
}
]
}
}
]
}
},
"strictPeerDeps": false,
"force": false
}
i starred all locations to keep it a secret but it gives out basically the project’s location
About this issue
- Original URL
- State: open
- Created 2 years ago
- Comments: 20
I had to add
"react-dom": "18.0.0"to my package.json and then install as described in the docs.Hi @R4Y-repo, we currently don’t support react@18 and expo 46. we are working on the fix.
Add the follow lines in your
package.jsonfile:@Viraj-10 when running:
npx react-native init TSProject --template react-native-template-typescriptreact@18.1.0 is installedSo then when running:
npm install native-base react-native-svg@12.1.1 react-native-safe-area-context@3.3.2We get a similar error as described above.Hi @Foohx, Thanks for sharing the logs seems like the issue is coming from
react-native-aria. we will fix this warning soon.I am having similar logs with react 18.1
Hi, @nicolinho22 @hayate I tried installing
native-basein the expo project and I was able to do it.Please follow the steps:-
nvm use v16.13.0.expo init my-projectchoose the template JS/TScd my-projectnpm install native-basenpx expo install react-native-svg@12.1.1npx expo install react-native-safe-area-context@3.3.2expo install @expo/webpack-config@^0.17.0(for web support).npm startif you still face an error please run
npx native-base-infoand comment the log here.