Pular para o conteúdo principal

Toast

Base

Personalização

Sem mensagem

Use quando for necessário apenas um título, com poucas palavras.

Mensagem personalizada

Use o componente Toast.Text para adicionar links ou botões.

Botão

Ícone personalizado

A propriedade icon permite que você insira no Toast os ícones disponíveis. Caso você precise de um ícone novo, faça solicitação ao time do Tangram.

Tipos

Cada "tipo" de Toast já vem com um ícone padrão relacionado a cada tipo disponível. Para saber qual tipo de Toast usar em cada cenário acesse a nossa aba de uso do componente.

Primary

Danger

Warning

Success

Help

Delay

O Toast não é removido da tela automaticamente, mas é possível adicionar um tempo de delay para que ele saia da tela. Esse tempo deve ser adicionado em milisegundos.

Sem a opção de fechar

Não permite que o Toast seja removido da tela.

ToastProvider

O componente Toast possui um provider que é utilizado pela HOC withToast e pelo hook useToast. Esse provider pode ser instanciado apenas uma vez no mais alto nível da aplicação e nos testes.

Atenção

Evite instanciar mais de um ToastProvider em sua aplicação.

Adicionar Múltiplos Toasts

useToast

Use o hook useToast para adicionar mais de um Toast ou limpar todos os adicionados.

Para mais detalhes sobre os parâmetros e retornos consulte a API do useToast.

Com withToast

Outra forma de adicionar mais de um Toast e removê-los de uma vez só é usando o componente de ordem superior (HOC, do inglês High Order Component) withToast. Essa função recebe um componente que repassa a função addToast e todos os atributos da função useToast.

import React from 'react';
import {
withToast,
ButtonGroup,
Button
} from '@resultadosdigitais/tangram-components';
const MyDesiredToast = ({ addToast, clean }) => {
const [count, setCount] = React.useState(0);

const handleAddToast = () => {
const newCount = count + 1;

addToast({
title: `Toast title ${newCount}`,
message: `Toast message ${newCount}`
});
setCount(newCount);
};

return (
<ButtonGroup>
<Button kind={Button.kinds.secondary} onClick={handleAddToast}>
Add Toast
</Button>

<Button kind={Button.kinds.tertiary} onClick={clean}>
Clear Toasts
</Button>
</ButtonGroup>
);
};

const ExampleHOC = withToast(MyDesiredToast);

export default ExampleHOC;

Feedback