1. Podemos já ver que os que cadastramos funcionara perfeitamente, agora vamos criar mais um

  2. Com isso feito, vamos agora fazer a exclusão do nosso endereço. Vamos começar passando o nosso state para o item, e lá vamos receber ele para poder fazer a atualização da lista.

    const renderItem: ListRenderItem<Address> = ({ item }) => (
      <AddressCard item={item} address={allAddress} setAddress={setAllAddress} />
    );
    
    interface ItemProps {
      item: Address;
      address: Address[];
      setAddress: React.Dispatch<SetStateAction<Array<Address>>>;
    }
    
    const deleteIcon = require("../../../../assets/icons/trash.png");
    
    const AddressCard = ({ item, address, setAddress }: ItemProps) => {
    
  3. Agora vamos criar o handle e utilizar ele no ícone de deletar

    const AddressCard = ({ item, address, setAddress }: ItemProps) => {
      const handleDeletAddress = async () => {
        Alert.alert(
          "Você tem certeza?",
          "Ao fazer isso você deleterá o endereço para sempre",
          [
            {
              text: "Sim",
              onPress: () => {
                addressService.deleteAddress(item._id);
    
                const filteredAddresses = address.filter(
                  (address) => address._id !== item._id
                );
    
                setAddress(filteredAddresses);
              },
            },
    
            {
              text: "Não",
            },
          ]
        );
      };
    
      return (
        <Container>
          <Title>{`Rua: ${item.street} - Nº ${item.number}\\nUF: ${item.state}\\nCEP: ${item.cep}`}</Title>
          <DeletButton onPress={handleDeletAddress}>
            <DeletIcon source={deleteIcon} />
          </DeletButton>
        </Container>
      );
    };
    
  4. Agora temos o ciclo completo dos endereços que estão dentro do nosso sistema, podendo criar, excluir e ver eles aqui dentro desse ciclo