Ando fixando alguns conceitos reacts enquanto estou de férias.. Eu to fazendo um exercício onde utilizo um input para receber um nome, esse nome é armazenado no state e a partir de um click no mouse, aparece uma mensagem de bem vindo mais o nome utilizado no input, até aí tudo bem.. O porém é que quando nada é digitado a mensagem ainda aparece porém sem o nome (obviamente), só que eu gostaria que retornasse uma mensagem de erro no lugar, só que não sei como faria isso, alguém poderia me ajudar?
Segue o código abaixo:
import React from "react";
import styled from "styled-components";
export default function Example2() {
const [click, setClick] = React.useState(true);
const [name, setName] = React.useState('');
let msg = "Parabéns por ter clicado no botão " + name;
return (
<SectionExample2>
<div className={click ? 'msg-noclick' : 'msg-click'}>{click ? '' : msg}</div>
<form>
<label>Nome</label><br/>
<input type='text' placeholder="Digite seu nome completo" onChange={(e) => {setName(e.target.value)}} value={name} />
</form><br/>
<button onClick={() => {setClick(!click)}}>Clique aqui</button>
</SectionExample2>
)
}
OBS: A tag utilizada no return é gerada a partir de um styled-components, não coloquei o código do mesmo aqui pois acho que não tem necessidade, já que é só estilização.