Hvordan løser jeg 'Argument types do not match parameters' i TypeScript med React Navigation?


Jeg prøver å bruke Typescript i ReactNavigation, og fikk en feil fra IDE (webstorm)

Min Navigator:

export type RootStackParamList = {
    AppStack: undefined;
    AuthStack: undefined;
};

const RootStack = createStackNavigator<RootStackParamList>();

const Navigation: React.FunctionComponent = () => {
    return (
        <RootStack.Navigator>
            <RootStack.Screen name="AuthStack" component={AuthStack} />
            <RootStack.Screen name="AppStack" component={AppStack} />
        </RootStack.Navigator>
    );
}

Min LoginScreen i AuthStack:

type NavigationProps = StackNavigationProp<RootStackParamList>;
const LoginScreen = () => {
    const navigation = useNavigation<StackNavigationProp<RootStackParamList>>();
    const requestLogin = () => {
        navigation.navigate('AppStack');  // IDE show error in 'AppStack'
    }
}

Jeg kjører appen og alt er ok, men IDE-en viser fortsatt feil: Argumenttyper samsvarer ikke med parameterne. Det er ikke en eslint-feil.

Hvordan kan jeg fikse denne feilen?

Svar #1

Ser ut som det er en feil i en gammel versjon av Webstorm. Jeg oppdaterte nettopp Webstorm til 2023.2.5, og feilen forsvant.

Relaterte artikler