fix: fix type signature for setParams (#24)

This commit is contained in:
Satyajit Sahoo
2019-07-23 00:53:38 +02:00
committed by GitHub
parent d3e200d727
commit 30b8fb26b1
9 changed files with 48 additions and 37 deletions

View File

@@ -36,8 +36,9 @@ export type StackNavigationOptions = {
};
export type StackNavigationProp<
ParamList extends ParamListBase
> = NavigationProp<ParamList, StackNavigationOptions> & {
ParamList extends ParamListBase,
RouteName extends keyof ParamList = string
> = NavigationProp<ParamList, RouteName, StackNavigationOptions> & {
/**
* Push a new screen onto the stack.
*

View File

@@ -29,10 +29,10 @@ export type TabNavigationOptions = {
title?: string;
};
export type TabNavigationProp<ParamList extends ParamListBase> = NavigationProp<
ParamList,
TabNavigationOptions
> & {
export type TabNavigationProp<
ParamList extends ParamListBase,
RouteName extends keyof ParamList = string
> = NavigationProp<ParamList, RouteName, TabNavigationOptions> & {
/**
* Jump to an existing tab.
*

View File

@@ -3,7 +3,7 @@ import { render } from 'react-dom';
import {
NavigationContainer,
CompositeNavigationProp,
NavigationProp,
NavigationHelpers,
RouteProp,
InitialState,
} from '../src';
@@ -30,8 +30,8 @@ const First = ({
route,
}: {
navigation: CompositeNavigationProp<
StackNavigationProp<StackParamList>,
NavigationProp<TabParamList>
StackNavigationProp<StackParamList, 'first'>,
NavigationHelpers<TabParamList>
>;
route: RouteProp<StackParamList, 'first'>;
}) => (
@@ -62,8 +62,8 @@ const Second = ({
navigation,
}: {
navigation: CompositeNavigationProp<
StackNavigationProp<StackParamList>,
NavigationProp<TabParamList>
StackNavigationProp<StackParamList, 'second'>,
NavigationHelpers<TabParamList>
>;
}) => {
const [count, setCount] = React.useState(0);
@@ -98,7 +98,7 @@ const Fourth = ({
navigation,
}: {
navigation: CompositeNavigationProp<
TabNavigationProp<TabParamList>,
TabNavigationProp<TabParamList, 'fourth'>,
StackNavigationProp<StackParamList>
>;
}) => (
@@ -123,7 +123,7 @@ const Fifth = ({
navigation,
}: {
navigation: CompositeNavigationProp<
TabNavigationProp<TabParamList>,
TabNavigationProp<TabParamList, 'fifth'>,
StackNavigationProp<StackParamList>
>;
}) => (