Agora, para finalizarmos, nós vamos fazer a estrutura de getAddress, e essa estrutura será chamada sempre que mudar o “newAddress”
Nós vamos dentro de AllAddress para criar um handle que vai pegar os endereços e chamar ele em um useEffect
type Props = NativeStackScreenProps<PropsNavigationStack, "AllAddress">;
const AllAddress = ({ route }: Props) => {
const navigation = useNavigation<PropsStack>();
const [allAddress, setAllAddress] = useState<Address[]>([]);
console.log(allAddress);
const { newAddress } = route.params;
const renderItem: ListRenderItem<Address> = ({ item }) => (
<AddressCard item={item} />
);
const handleGetAddress = async () => {
const res = await addressService.getAddress();
setAllAddress(res.data);
};
useEffect(() => {
handleGetAddress();
}, [newAddress]);
return (
Agora ao acessar a página podemos ver no console os endereços criados. Vamos fazer um teste agora adicionando um novo endereço e sendo redirecionado.
Porém antes a gente pode substituir aqui o nosso “Data” fake e colocar o verdadeiro para a flatlist
<FlatList
data={allAddress}
keyExtractor={(item: Address) => item._id}
renderItem={renderItem}
showsVerticalScrollIndicator={false}
contentContainerStyle={{ paddingBottom: 70 }}
/>