Most of the react navigation examples on snack are not working
armyofda12mnkeys opened this issue · 2 comments
Most of the react navigation examples are not working.
They all say:
package.json (6:5)
Failed to resolve dependency 'react-native-pager-view@6.1.2' (Invalid module ../Utilities/Platform - Module not found: Error: Can't resolve '../Utilities/Platform' in '/tmp/snackager/snackager/buildStatus/1/react-native-pager-view@6.1.2-ios,android,web/package/node_modules/react-native/Libraries/Alert')
Something have to fix on your side?
Yes, it looks to me like there are extra dependencies specified in package.json that don't need to be there are are causing problems.
e.g. if I try the link you posted above, it only has the following imports:
import * as React from 'react';
import { View, Text, Button, Image } from 'react-native';
import { NavigationContainer } from '@react-navigation/native';
import { createNativeStackNavigator } from '@react-navigation/native-stack';By the way, the first one (the 'react' import) is no longer needed and can just be deleted.
If you check package.json it has all of these dependencies specified:
"dependencies": {
"@expo/vector-icons": "^13.0.0",
"@react-native-community/masked-view": "*",
"react-native-gesture-handler": "~2.9.0",
"react-native-pager-view": "6.1.2",
"react-native-paper": "^4.7.2",
"react-native-reanimated": "~2.14.4",
"react-native-safe-area-context": "4.5.0",
"react-native-screens": "~3.20.0",
"react-native-tab-view": "^3.0.0",
"@react-navigation/bottom-tabs": "6.3.1",
"@react-navigation/drawer": "6.4.1",
"@react-navigation/elements": "1.3.3",
"@react-navigation/material-bottom-tabs": "6.2.1",
"@react-navigation/material-top-tabs": "6.2.1",
"@react-navigation/native-stack": "6.6.1",
"@react-navigation/native": "6.0.10",
"@react-navigation/stack": "6.2.1"
}In Snack it does not list things like expo or react-native. They are automatically included based on the selected Expo SDK version.
The following should fix this Snack: Remove everything from dependencies except the stuff you're actually importing:
"dependencies": {
"@react-navigation/native-stack": "6.6.1",
"@react-navigation/native": "6.0.10"
}Snack will then prompt you to add back a few things and you'll end up with this:
"dependencies": {
"@react-navigation/native": "6.0.10",
"@react-navigation/native-stack": "6.6.1",
"react-native-safe-area-context": "4.5.0",
"react-native-screens": "~3.20.0"
}If I do that it works for me.