Button
A simple set of buttons
Demo
Install
bash
npm i @vuesimple/vs-buttonUsage
html
<template>
<vs-button>Default</vs-button>
<vs-button variant="primary" fill>Primary</vs-button>
</template>
<script>
import VsButton from '@vuesimple/vs-button';
export default {
components: {
VsButton,
},
};
</script>CDN
html
<script src="https://cdn.jsdelivr.net/npm/@vuesimple/vs-button@<version>/dist/index.min.js"></script>TIP
Replace <version> with a version number in the above url.
javascript
// Main/Entry file
app.use(VsButton.plugin);html
<template>
<vs-button>Default</vs-button>
<vs-button variant="primary" fill>Primary</vs-button>
</template>Nuxt.js
Nuxt Code Snippet
After installation,
Create a file
/plugins/vs-button.jsjavascriptimport Vue from 'vue'; import VsButton from '@vuesimple/vs-button'; Vue.component('vs-button', VsButton);Update
nuxt.config.jsjavascriptmodule.exports = { ... plugins: [ { src: '~plugins/vs-button', mode: 'client' } ... ] }In the page/ component
html<template> <vs-button>Default</vs-button> <vs-button variant="primary" fill>Primary</vs-button> </template>
Note
- For older Nuxt versions, use
<no-ssr>...</no-ssr>tag. - You can also do
import VsButton from '@vuesimple/vs-button'& add incomponent:{VsButton}and use it within component, without globally installing in plugin folder.
Props
| Name | Type | Default | Description |
|---|---|---|---|
| variant | String | default | Type of button to be shown. (default, primary, secondary, warning, danger, success, light) |
| size | String | medium | Size of button. (small, medium, large) |
| fill | Boolean | - | Applies background color to button |
| isRound | Boolean | - | Applies round/pill styling |
| isLoading | Boolean | - | Will show loader and button will be disabled |
| disabled | Boolean | - | Disable button |
| href | String | - | Link/URL string |
| target | String | - | Can add _blank, _self |
| rel | String | - | Rel strings can be added like noreferrer, noopener |
Events
| Name | Description |
|---|---|
| click | Emitted when the button clicked. |
Slots
You can define own item markup via #slot-name:
| Name | Description |
|---|---|
| (default) | Holds the button content and can contain HTML. |
| loader | Holds the loader component and can contain HTML/vue-component. |

