Business
Jobs
  • About Us
  • Solutions
    • Job Postings
      Post your job and receive qualified candidates in 48h.
    • Candidate Assessments
      500+ technical and psychological tests, plus anti-fraud.
    • Headhunting
      Tailor-made executive search from start to finish.
    • Payroll + EOR
      Payroll dispersal and EOR across 15+ LATAM countries.
  • Pricing
  • Jobs

0

181
Views
¿Cómo crear un nuevo tipo de objeto genérico que use los genéricos de react-navigation?

En mi proyecto React Native tengo varias pantallas, cada pantalla que tengo que importar estos tipos y configurar es como tipo de accesorios en mi pantalla una y otra vez.

 import { RouteProp } from '@react-navigation/native' import { StackNavigationProp } from '@react-navigation/stack' import { NavigatorParameters } from '../references/types/navigators' type PropsType = { navigation: StackNavigationProp<NavigatorParameters, 'ChangeData'>, route: RouteProp<NavigatorParameters, 'ChangeData'> } function ChangeData({ navigation, route }: PropsType) {

¿Se puede simplificar más así? Entonces, a partir de eso, solo puedo importar un solo tipo

 import ScreenPropsPatternType from '../references/types/screen-props-pattern' function ChangeData({ navigation, route }: ScreenPropsPatternType<'ChangeData'>) {
about 4 years ago · Juan Pablo Isaza
1 answers
Answer question

0

La biblioteca React Navigation ya ofrece un tipo genérico para este propósito exacto :

Alternativamente, también puede importar un tipo genérico para definir tipos para los accesorios de navigation y route desde el navegador correspondiente:

En tu caso, se vería así:

 import { StackScreenProps } from '@react-navigation/stack'; import { NavigatorParameters } from '../references/types/navigators' type PropsType = StackScreenProps<NavigatorParameters, 'ChangeData'>; function ChangeData({ navigation, route }: PropsType) {

Si desea simplificar esto aún más, probablemente podría envolverlo y exportar su propio tipo. Consulte la documentación de tipos de objetos genéricos para obtener más detalles sobre cómo funciona.

 import { StackScreenProps } from '@react-navigation/stack'; import { NavigatorParameters } from '../references/types/navigators' export type ScreenPropsPatternType<K extends keyof NavigatorParameters> = StackScreenProps<NavigatorParameters, K>;

Por lo tanto, podrá usarlo fácilmente dentro de los componentes de la pantalla.

 import { ScreenPropsPatternType } from '../references/types/screen-props-pattern'; type PropsType = ScreenPropsPatternType<'ChangeData'> & { // If you have any other custom props, this is totally optional. customProp: number; } function ChangeData({ navigation, route, customProp }: PropsType) {
about 4 years ago · Juan Pablo Isaza Report
Answer question
Find remote jobs

Discover the new way to find a job!

Top jobs
Top job categories
Business
Post vacancy Pricing Sales
Legal
Terms and conditions Privacy policy
© 2026 PeakU Inc. All Rights Reserved.
Andres GPT
Show me some job opportunities
There's an error!