javascript - Egenskapen 'pop' existerar inte på typen 'NavigationProp, string, NavigationState, {}, {}>'


Hur kan vi använda pop()-funktionen i React Native Navigation?

onPress={() => navigation.pop('Home')}>

ger mig ett TypeScript-fel som

Egenskapen 'pop' finns inte på typen 'NavigationProp, string, NavigationState, {}, {}>'.ts(2339

Svar #1

Du måste annotera navigeringsprop som vi får från useNavigation

types.ts:

export type RootStackParamList = {
  Home: undefined;
}

din fil:

const navigation = useNavigation<StackNavigationProp<RootStackParamList>>();

Svar #2

const navigation = useNavigation<StackNavigationProp<any>>();

om utdraget ovan inte hjälpte, försök

const navigation = useNavigation<any>();

om du använder import { NavigationContext } från '@react-navigation/native';

const navigation = React.useContext<any>(NavigationContext);