1. Aqui no addAddress a gente já tem os fields, então a gente pode apenas criar o handle para adicionar o endereço

    const navigation = useNavigation<PropsStack>();
    
    {/* Outros códigos */}
    
    const handleAddAddress = async () => {
      if (fields.cep.length < 8) {
        Alert.alert("Você precisa preencher tudo do seu CEP");
        return;
      } else if (
        !fields.city ||
        !fields.district ||
        !fields.number ||
        !fields.state ||
        !fields.street
      ) {
        Alert.alert("Algum dos seus campos obrigatórios está vazio");
        return;
      }
    
      const params = fields;
      const data = await addressService.addAddress(params);
    
      if (data.status === 201) {
        navigation.navigate("AllAddress");
      }
    };
    
  2. Nós podemos também deixar a verificação mais curta com filtros, para que não fique esse bolo gigante de código

    const handleAddAddress = async () => {
      if (fields.cep.length < 8) {
        Alert.alert("Você precisa preencher tudo do seu CEP");
        return;
      } else if (
        Object.entries(fields)
          .filter(([key, value]) => key !== "complement")
          .some(([key, value]) => value === "")
      ) {
        Alert.alert("Algum dos seus campos obrigatórios está vazio");
        return;
      }
    
      const params = fields;
      const data = await addressService.addAddress(params);
    
      if (data.status === 201) {
        navigation.navigate("AllAddress");
      }
    };
    
  3. Com isso feito, nós vamos poder criar um endereço para esse nosso usuário, vamos criar aqui o endereço e preencher as informações necessárias, e poderemos ver lá no mongoDB o endereço criado para esse usuário

  4. Antes de irmos verificar o get do endereço nós vamos colocar aqui dentro de routes um parâmetro, para que quando a gente navegar da página de CreateAddress para GetAddress a gente atualize os endereços que são pegos

    AllAddress: {
      newAddress: string;
    };
    
  5. E aí agora vamos lá no “AddAddress” e também no UserProfile para que a gente coloque essa string.

    1. AddAddress

      if (data.status === 201) {
        navigation.navigate("AllAddress", {
          newAddress: fields.street,
        });
      }
      
    2. Profile

      <AddressText
        onPress={() => {
          navigation.navigate("AllAddress", {
            newAddress: "",
          });
        }}
      >
        Gerenciar Endereços
      </AddressText>