Skip to content

MeForma/vue-toaster

Folders and files

NameName
Last commit message
Last commit date

Latest commit

History

36 Commits

Repository files navigation

Vue Toaster

Vue.js toast notification plugin for vue 3

DEMO

Installation

# yarn yarn add @meforma/vue-toaster # npm npm install @meforma/vue-toaster

Import

You can install Toaster so it's usable globally:

// In you main.js// ... considering that your app creation is hereimportToasterfrom"@meforma/vue-toaster";createApp(App).use(Toaster).mount("#app");

You can also import Toaster locally:

import{createToaster}from"@meforma/vue-toaster";consttoaster=createToaster({/* options */});toaster.show(`Hey! I'm here`);

Usage

// this.$toast.show(message,{/* options */});this.$toast.show(`Hey! I'm here`);this.$toast.success(`Hey! I'm here`);this.$toast.error(`Hey! I'm here`);this.$toast.warning(`Hey! I'm here`);this.$toast.info(`Hey! I'm here`);// Close all opened toast after 3000mssetTimeout(this.$toast.clear,3000);

Available options

The API methods accepts these options:

AttributeTypeDefaultDescription
messageString--Message text/html (required)
typeStringdefaultOne of success, info, warning, error, default
positionStringbottom-rightOne of top, bottom, top-right, bottom-right,top-left, bottom-left
durationNumber or false4000Visibility duration in milliseconds or false that disables duration
dismissibleBooleantrueAllow user close by clicking
onClickFunction--Do something when user clicks
onCloseFunction--Do something after toast gets dismissed
queueBooleanfalseWait for existing to close before showing new
maxToastsNumber or falsefalseDefines the max of toasts showed in simultaneous
pauseOnHoverBooleantruePause the timer when mouse on over a toast
useDefaultCssBooleantrueUser default css styles

API methods

show(message, ?options)

This is generic method, you can use this method to make any kind of toast.

// Can accept a message as string and apply rest of options from defaultsthis.$toast.show("Howdy!");// Can accept an Object of options.// If yout don't pass options, the default toast will be showedthis.$toast.show("Something went wrong!",{type: "error",// all of other options may go here});

success(message,?options)

There are some proxy methods to make it more readable. The same rule for error, info and warning methods

this.$toast.success("Profile saved.",{// optional options Object});

Global options

You can set options for all the instances during plugin initialization

app.use(Toaster,{// One of the optionsposition: "top",});

Further you can override option when creating new instances

this.$toast.success("Order placed.",{// override the global optionposition: "bottom",});

How to execute example

Clone the project and run:

cd example; yarn install; yarn serve 

License

MIT License

About

Vue.js toast notification plugin for vue 3

Topics

Resources

License

Stars

Watchers

Forks

Contributors 4

  •  
  •  
  •  
  •