gridsome-plugin-vue-toasted
Version:
Gridsome plugin for Vue-toasted
120 lines (84 loc) โข 3.08 kB
Markdown
# ๐ฅช Toast component for Gridsome

A Gridsome plugin built on top of [Vue-toasted](https://www.npmjs.com/package/vue-toasted), one of the best toast plugin available for VueJS.
**Now you can also use it in Gridsome!** ๐ฅ๐ฅ
## Introduction
[Vue-toasted](https://www.npmjs.com/package/vue-toasted) is a cool Toast plugin for any Vue-related project, and this plugin enhances the possibility of using it in Gridsome project ๐ฏ.
๐ฅ There are icons built-in supported such as [FontAwesome](https://fontawesome.com/), [Material Icons](http://google.github.io/material-design-icons/) etc.
๐ฅ And it's responsive too!
### Demo
Check out the official [demo](https://shakee93.github.io/vue-toasted/).

## ๐ Install
### Yarn
```bash
yarn add gridsome-plugin-vue-toasted
```
### Npm
```bash
npm i gridsome-plugin-vue-toasted --save
```
## ๐ป Usage
Simply add the following code inside `gridsome.config.js`
```js
module.exports = {
plugins: [
{
use: 'gridsome-plugin-vue-toasted',
options: {}, // Optional - setup global options for the toast
}
]
}
```
More information on options API, [check out the documentation here](https://github.com/shakee93/vue-toasted#options)
_Example_: To set up toast displayed from bottom center of the page `position: 'bottom-center'`, one toast as a time `singletone: true`, and auto disappear after 5 secs `duration: 5000`.
```js
module.exports = [
//... - other plugins
{
use: 'gridsome-plugin-vue-toasted',
options: {
position: 'bottom-center',
singleton: true,
duration: 5000,
}
}
]
```
You can use directly in the component as normal, with a few lines of code:
```js
//...
methods: {
showToast() {
//Info toast
this.$toasted.info("I'm a toast ๐ฅช !", /* options */)
//Error toast
this.$toasted.error("Error", /* options */)
//Success toast
this.$toasted.success("Success", /* options */)
//Or just simple toast
this.$toasted.show("Hello World", /* options */)
}
}
```
๐งผ Clearing toast(s):
```js
this.$toasted.clear()
```
๐
Register and personalize a toast dynamically
```js
this.$toasted.register(
'my_cool_toast', //name of the toast
"I'm a cool toast", //message of the toast,
//options of the toast
{
type: 'success',
icon: 'success', //icon to use for the toast
}
)
```
## APIs
A full list of [official API documentation here](https://github.com/shakee93/vue-toasted#api).
## Credits
I only hold credit for creating the Gridsome plugin wrapper ๐. All other credits go to the awesome team and contributors behind [Vue Toasted](https://github.com/shakee93/vue-toasted) project and external library (if any).
Enjoy ๐ฅช!