Toast

A succinct message that is displayed temporarily.

Installation

Run the following command

bash
npx shadcn-vue@latest add toast

Add the Toaster component

Add the following Toaster component to your App.vue file:

vue
<script setup lang="ts">
import Toaster from '@/components/ui/toast/Toaster.vue'
</script>

<template>
  <Toaster />
</template>

Usage

The useToast hook returns a toast function that you can use to display a toast.

tsx
import { useToast } from '@/components/ui/toast/use-toast'
vue
<script setup lang="ts">
import { Button } from '@/components/ui/button'
import { Toaster } from '@/components/ui/toast'
import { useToast } from '@/components/ui/toast/use-toast'

const { toast } = useToast()
</script>

<template>
  <Toaster />
  <Button
    @click="() => {
      toast({
        title: 'Scheduled: Catch up',
        description: 'Friday, February 10, 2023 at 5:57 PM',
      });
    }"
  >
    Add to calendar
  </Button>
</template>

Examples

Simple

With Title

With Action

Destructive

Use toast({ variant: "destructive" }) to display a destructive toast.

Edit this page on GitHub