В соответствии с официальной документацией о проверке типов, мы должны назвать наш тип реквизита навигации следующим образом:
type HomeScreenNavigationProp = StackNavigationProp<StackParamList, 'Home'>;
type HomeScreenRouteProp = RouteProp<StackParamList, 'Home'>;
interface Props {
navigation: HomeScreenNavigationProp,
route: HomeScreenRouteProp,
}
И заменить Home
на каждое отображаемое имя.
Но это можно легко упростить до этого:
type Navigation = StackNavigationProp<StackParamList, 'Home'>;
type Route = RouteProp<StackParamList, 'Home'>;
interface Props {
navigation: Navigation,
route: Route,
}
Или даже проще, объявив тип непосредственно на интерфейсе Props, как это:
interface Props {
navigation: StackNavigationProp<StackParamList, 'Home'>,
route: RouteProp<StackParamList, 'Home'>,
}
С тем же результатом .
Есть ли какая-либо техническая причина, чтобы избегать того, что я делаю, и называть типы пропов, как описано в документации?
Если нет, существует ли какое-либо соглашение об именовании типов с реагированием-навигацией и / или реагировать-нативно?