vue-svg-filler
Vue component for custom your svg file.
2,564
83
| Install | |
|---|---|
npm install vue-svg-filler |
|
| Latest Version: | 1.0.6 |
| Vue: | 2 |
| License: | MIT |
| Last Updated: | Aug 31, 2023 |
| Links: | GitHub · npm |
Maintainer: biig_pongsatorn
Vue SVG Filler 🖍 🎨
Vue component for customize your svg file.
Demo Page
Install
npm install vue-svg-filler --save
or
yarn add vue-svg-filler
Usage
import SvgFiller from 'vue-svg-filler'
Vue.component('svg-filler', SvgFiller)
🚨 Please note that !
- Your
svgfile must only contain in/staticdirectory pathmust be full path e.g.static/icon.svgor/static/icon/file.svg, Can't use../or./
<svg-filler path="static/PATH/OF/YOUR/FILE.svg"/>
Example directory structure
my-project
├── ...
│
├── src
├── static
│ ├── icon
│ │ └── bitcoin.svg
│ │ └── palette.svg
│ │ └── frog.svg
│ ├── github.svg
│ └── vuejs.svg
│
└── ...
Example
Simple usage
<svg-filler path="static/github.svg"/>
Customize fill & size
<svg-filler path="static/icon/bitcoin.svg" fill="#FF9900" width="50px" height="50px"/>
Fill & stroke
<template>
<div>
<svg-filler path="/static/vue-svg-filler/icon/palette.svg" class="cs-pointer" :fill="svgPalette.color" :width="svgPalette.width" :height="svgPalette.height" @click="svgPalette.color = randomColor()"/>
<svg-filler path="/static/vue-svg-filler/icon/palette.svg" class="cs-pointer" :stroke="svgPalette.color" fill="none" :width="svgPalette.width" :height="svgPalette.height" @click="svgPalette.color = randomColor()"/>
</div>
</template>
<script>
export default {
data () {
return {
svgPalette: {
color: this.randomColor(),
width: '150px',
height: '150px'
}
}
},
methods: {
randomColor () {
let length = 6
let chars = '0123456789ABCDEF'
let hex = '#'
while (length--) hex += chars[(Math.random() * 16) | 0]
return hex
}
}
}
</script>
Hover
<template>
<div>
<svg-filler path="/static/vuejs.svg" fill="#42b883" width="150px" height="150px":hover-color="#35495e"/>
<div>Hover me !</div>
</div>
</template>
Options
Props
| Props | Type | Default | Description |
|---|---|---|---|
| path | String | - | Path of your svg file in /static |
| width | String | 24px | Width |
| height | String | 24px | Height |
| fill | String | #000 | Fill color |
| hover-color | String | - | Fill color when hover icon |
| stroke | String | none | Stroke color |
| hover-stroke-color | String | - | Stroke color when hover icon |
Events
| Name | Type | Default | Description |
|---|---|---|---|
| click | Function | - | Triggers when click |
| [any].native | event: $event | - | Listen to any native event, e.g. mouseover.native |
Contributing
- Fork this repository.
- Create new branch with feature name.
- Run
npm installandnpm run dev. - Create your feature.
- Commit and set commit message with feature name.
- Push your code to your fork repository.
- Create pull request. 🙂
Support
If you like this project, You can support me with starring ⭐ this repository.
License
Developed with ❤️ and ☕️
Version History
| Version | Released | Vue | License |
|---|---|---|---|
| 1.0.6 | ^2.5.11 | MIT | |
| 1.0.5 | ^2.5.11 | MIT | |
| 1.0.4 | ^2.5.11 | MIT | |
| 1.0.3 | ^2.5.11 | MIT | |
| 1.0.2 | ^2.5.11 | MIT | |
| 1.0.1 | ^2.5.11 | MIT | |
| 0.9.9 | ^2.5.11 | MIT | |
| 0.1.0 | ^2.5.11 | MIT | |
| 0.0.17 | ^2.5.11 | MIT | |
| 0.0.16 | ^2.5.11 | MIT | |
| 0.0.15 | ^2.5.11 | MIT | |
| 0.0.14 | ^2.5.11 | MIT | |
| 0.0.13 | ^2.5.11 | MIT | |
| 0.0.12 | ^2.5.11 | MIT | |
| 0.0.11 | ^2.5.11 | MIT | |
| 0.0.10 | ^2.5.11 | MIT | |
| 0.0.9 | ^2.5.11 | MIT | |
| 0.0.8 | ^2.5.11 | MIT | |
| 0.0.7 | ^2.5.11 | MIT | |
| 0.0.6 | ^2.5.11 | MIT | |
| 0.0.5 | ^2.5.11 | MIT | |
| 0.0.4 | ^2.5.11 | MIT | |
| 0.0.3 | ^2.5.11 | MIT | |
| 0.0.2 | ^2.5.11 | MIT | |
| 0.0.1 | ^2.5.11 | MIT |