Это называется функциональный компонент , часто называемый компонентом без состояния.
Одно из основных отличий состоит в том, что SFC не получают автоматически реквизиты, а скорее должны бытьпередано в качестве аргументов.Поэтому вместо того, чтобы говорить this.props
, вы должны использовать этот шаблон:
const WomenTab = (props) => ( // <-- add props as an argument
<View>
<Button onPress={() => {
props.navigation.dispatch(StackActions.reset({
index: 0,
actions: [ NavigationActions.navigate({ routeName: 'Wallet' }) ],
}))
}}>
<Text>Click</Text>
</Button>
<View>
);
Так как реквизит навигации автоматически передается дочерним элементам навигаторов, вам больше ничего не нужно делать.Если вы хотите передать другие реквизиты, вы должны сделать это как обычно:
<WomenTab myProp={value} />
Другой распространенный шаблон - деструктурировать реквизиты, переданные в SFC, следующим образом:
const WomenTab = ( {navigation} ) => ( // <-- you can pick the props you want via destructuring
<View>
<Button onPress={() => {
navigation.dispatch(StackActions.reset({
index: 0,
actions: [ NavigationActions.navigate({ routeName: 'Wallet' }) ],
}))
}}>
<Text>Click</Text>
</Button>
<View>
);
Надеюсь, это поможет, удачи!