Empresas
Empregos
  • Sobre nós
  • Soluções
    • Publicação de vagas
      Publique sua vaga e receba candidatos qualificados em 48h.
    • Avaliações de candidatos
      Mais de 500 testes técnicos e psicológicos, mais anti-fraude.
    • Headhunting
      Busca executiva personalizada do início ao fim.
    • Folha de Pagamento + EOR
      Dispersão de folha e EOR em mais de 15 países da LATAM.
  • Preços
  • Empregos

0

655
Visualizações
My error: Objects are not valid as a React child (found: object with keys {}). If you meant to render a collection of children, use an array instead

After the user registers, I want to show his email on another page. In the true case, I have it as I want but in the false case, it shows an error. I will put that error below. Please help me fix this

**My activation page**

import React from "react";
import "./auth.css";

const Activation = (props) => {
  const email = (props.location && props.location.state) || {};

  return (
    <>
      {email ? (
        <div className="activation">
          <i className="vjtal06 fas fa-check-circle"></i>
          <h2>Registration successful.</h2>
          <div className="abn5uhi">
            <p>Thank you. We have send you email to {email}</p>
            <p>
              Pleace click the link in that message to activate your account.
            </p>
          </div>
        </div>
      ) : (
        <div className="activation">
          <i className="vjtal06 fas fa-check-circle"></i>
          <h2>Session Expired</h2>
          <div className="abn5uhi">
            <p>Pleace try again.</p>
          </div>
        </div>
      )}
    </>
  );
};

export default Activation;

Please click here to show my error img

about 4 years ago · Juan Pablo Isaza
2 Respostas
Responde à pergunta

0

All you need to do is remove this || {}; part :)

Explaination: There is something in javascript called Truthy and Falsy values and this means what can be translated into true and false if you checked them, in your case {} is Truthy value, so, in case of empty email, it still gets converted as true boolean value

about 4 years ago · Juan Pablo Isaza Relatório

0

Your email always validates to true since the empty object from your OR statement is not falsy nor undefined.

If you want to keep the code like this you can check against the length of the object.

Object.keys(email).length !== 0;
about 4 years ago · Juan Pablo Isaza Relatório
Responde à pergunta
Encontrar trabalhos remotos

Descubra a nova forma de encontrar um emprego!

melhores empregos
Principais categorias de trabalho
Empresas
Postar vaga Preços Comercial
Jurídico
Termos e Condições Política de privacidade
© 2026 PeakU Inc. All Rights Reserved.
Andres GPT
Recomende algumas ofertas para mim
Preciso de ajuda