A toast plugin for vue/vue2
npm install vue-easy-toastA toast plugin for vue/vue2.
Note:
Since 1.x.x, only Vue 2 is supported. For Vue 1 users please stick to version 0.x.x
Issue/PR is welcomed, I'll response as soon as possible.
#### installnpm install vue-easy-toast --save
#### Quickstart
``javascript
// before start
import Toast from 'vue-easy-toast'
// or a lite version without inline css, then you have to style yourself or manually import 'vue-easy-toast.css'
import Toast from 'vue-easy-toast/dist/vue-easy-toast-lite.min.js'
require('vue-easy-toast/dist/vue-easy-toast.css') // optional
Vue.use(Toast)
// in your code
Vue.toast('Can I have everybodys attention?')
// or
$vm.$toast('Let me give a toast to you all.')
// or with HTML Tags
$vm.$toast('Hi Jonh')
``
#### More
toast or $toast takes 2 parameter: (message, [options])
##### Options
Parameter | Type |Default| Description
--------- | ---- | ------|-----------
id | string | easy-toast-default | Unique identifier globally. Use this to create multiple toasts with different setups.string
parent | | body | Selector of the container (TODO, not ready yet, position is fixed to the window)string
className | , array | | Self-defined class names to pass through. There are 3 pre-defined classes: et-info, et-warn,et-alert, to toast with different background colorstring
horizontalPosition | | right | Position horizontal of toast. There are 3 pre-defined positions: left, right and centerstring
verticalPosition | | top | Position vertical of toast. There are 2 pre-defined positions: top and bottomnumber
duration | | 5000 | The duration one toast will last, in millisecondsstring
mode | | override | override or queue. If override, the last toast will forcibly flush previousboolean
closeable | | false | true or false. If true, the toast can be closed manuallystring
transition | | fade | Built-in transitions: fade, slide-[up/down/left/right]. See also Transitions
##### Styling
Besides minimum styling, vue-easy-toast try not to be opinionated about the appearance. It is a simply a div(class="et-wrapper") wrapped a span(class="et-content"). Apply your css freely with them or with your own classes passed in as className.
##### example
`javascript``
Vue.toast('Hi, there!', {
id: 'my-toast',
parent: '#toast-container',
className: ['my-toast', 'toast-warning'],
horizontalPosition: 'right',
verticalPosition: 'top',
duration: 3000,
mode: 'queue',
transition: 'my-transition'
})
##### TODO
* font-awesome? emoji?