Arthur Prasniski
Arthur Prasniski

Reputation: 75

Receive an undefined value

Good afternoon, I'm having trouble making my data accept a value undefined follows code:

interface IModalContatos {
  dados: IContatos;
  onSave(dados: IContatos): void;
  onClose(): void;
}

I am passing this data into my modal and it is returning the error to me ** Type 'IContacts | undefined 'is not assignable to type' ICContacts'. Type 'undefined' is not assignable to type 'ICContacts'. ** follow my modal

<ModalContatos
          dados={contatoParaAtualizar}
          onClose={handleClose}
          onSave={(contatoAtualizado) => {
            handleClose();
            if (atualizandoIndex === null) {
              setListaContatos([...listaContatos, contatoAtualizado]);
            } else {
              listaContatos[atualizandoIndex] = contatoAtualizado;
              setListaContatos([...listaContatos]);
            }
          }}
        />

also below my const of the modal

const [contatoAtualizado, setContatoAtualizado] = useState<IContatos>(dados);
  useEffect(() => {
    setContatoAtualizado(dados);
  }, [dados]);

I believe that data accepting an undefined value will resolve

Upvotes: 1

Views: 42

Answers (1)

Boussadjra Brahim
Boussadjra Brahim

Reputation: 1

Try out to add undefined type as follows :

interface IModalContatos {
  dados: IContatos | undefined;
  onSave:(dados: IContatos | undefined )=> void;
  onClose:()=> void;
}

Upvotes: 1

Related Questions