Przekazanie wartości przez komponenty

0

W komponencie gdzie mam zdefiniowaną FlatListe przekazuje dane do komponentu Product w którym mam definicje produktów. Chciałbym teraz aby po naciśnięciu produktu dalej były przesyłana dane do innego komponentu Term a przynajmniej sam id. Jak mogę w tym wypadku przekazać teraz dane z Product do TermeScreen ?

<FlatList 
          numColumns={3}
          data={product}
          keyExtractor={item => item.id}
          renderItem={({ item }) => (<Product {...item} />)}></FlatList>

Fragment komponentu Product

function Product({id, image, title}) {
    const navigation = useNavigation();
        return (
            <View style={styles.rootCointener}>
                <TouchableOpacity onPress={() => {navigation.replace('Term')}}>
                    <Image style={styles.imageCointener} source={image} />
                </TouchableOpacity>
                <Text style={styles.textCointener}>{title}</Text>
            </View>
        )
}

fragment nowego Komponentu

function TermeScreen (){
    return(
    <View >
    
    </View>
    )
}
2

A gdzie problem. Nie widzę w twoim poście żadnego pytania. Jeśli chodzi Ci, jak przesyłać dane między komponentami to zapoznaj się z props, ewentualnie useContext.

1

Możesz także przekazać ID produktu przez routing

https://reactnavigation.org/docs/params/

0

Masz już problem rozwiązany, jak chcesz coś przekazać do innego komponentu użyj propsów.
Jeśli te dane maja być używane do zagnieżdżonych komponentów, proponuje użyć coś do stanu, jak React Context czy Redux.
Lub jak Wyżej napisano, jak to działa jako strona produkty etc, wiec de facto masz router do tego to ID przekazujesz w paramsach routera.

1 użytkowników online, w tym zalogowanych: 0, gości: 1