Solucionado (ver solução)
Solucionado
(ver solução)
1
resposta

Duvida além do curso (Finalizei o outro tópico sem querer)

Notei que na pagina de carrinho possui um "Snackbar" que abre quando o botão " Comprar " é clicado através da propriedade "setOpenSnackbar(true)", queria saber como eu poderia utilizar um snackbar, para que toda vez que o botão for clicado ele alterne a propriedade dentro do setOpenSnackBar, para se ele tiver aberto e eu clique no botão, ele feche e vice-versa.

1 resposta
solução!

Olá Pedro, tudo bem?

Você pode tentar utilizar uma estrutura condicional para verificar se o Snackbar está aberto ou fechado e, assim, alternar o valor da propriedade "setOpenSnackbar".

Você pode fazer isso utilizando o operador ternário. Por exemplo:

const handleClick = () => {
  setOpenSnackbar(prev => !prev);
}

return (
  <div>
    <button onClick={handleClick}>Comprar</button>
    {openSnackbar ? <Snackbar open={openSnackbar} /> : null}
  </div>
);

No exemplo acima, a função handleClick é chamada toda vez que o botão "Comprar" é clicado. Ela utiliza a função prev do useState para alternar o valor da propriedade "openSnackbar".

Em seguida, é feita uma verificação condicional utilizando o operador ternário. Se "openSnackbar" for verdadeiro, o componente Snackbar é renderizado com a propriedade "open" setada como verdadeira. Caso contrário, o componente não é renderizado.

Espero ter ajudado e bons estudos!

Quer mergulhar em tecnologia e aprendizagem?

Receba a newsletter que o nosso CEO escreve pessoalmente, com insights do mercado de trabalho, ciência e desenvolvimento de software