Vue 2.x component for selecting image from list
https://mazipan.github.io/vue-select-image/
# Yarn
yarn add vue-select-image
# NPM
npm i vue-select-image --save
import VueSelectImage from 'vue-select-image'
// add stylesheet
require('vue-select-image/dist/vue-select-image.css')
components: { VueSelectImage }
Vue.use(VueSelectImage)
[{
id: '1',
src: 'https://unsplash.it/200?random',
alt: 'Alt Image 1'
}, {
id: '2',
src: 'https://unsplash.it/200?random',
alt: 'Alt Image 2'
}, {
id: '2',
src: 'https://unsplash.it/200?random',
alt: 'Alt Image 2',
disabled: true
}]
Field | Description |
---|---|
id | Unique id for each image, will also set for id attribute on image DOM |
src | Src attribute for image |
alt | Alt attribute for image |
disabled | Image disabled, can not be select |
<vue-select-image
:dataImages="dataImages"
@onselectimage="onSelectImage">
</vue-select-image>
onselectimage
will return emitted with parameter object image selected
<vue-select-image
:dataImages="dataImages"
:is-multiple="true"
:selectedImages="initialSelected"
@onselectmultipleimage="onSelectMultipleImage">
</vue-select-image>
onselectmultipleimage
will return emitted with parameter list of object images selected
Attribute | Type | Default | Description |
---|---|---|---|
:dataImages | Array | [] | Array of images that will be shown |
:selectedImages | Array | [] | Array of initial selected images |
:isMultiple | Boolean | false | Flag to enable multiple selection |
:useLabel | Boolean | false | Flag to enable showing alt as label |
:rootClass | String | vue-select-image | Class for root element of this component |
:activeClass | String | --selected | Class for active state, will concat with :rootClass |
:h | String | auto | Height of images, ex: '50px' |
:w | String | auto | Width of images, ex: '50px' |
:limit | Number | 0 | To set maximum images can be select |
Events Attr | Return |
---|---|
@onselectimage | Object image selected |
@onselectmultipleimage | Array of object image has been selected |
@onreachlimit | When the length of selected images reach the limit |
Sometimes you need to access our internal methods via $refs
, you need to know this methods:
Methods Name | Use for |
---|---|
removeFromSingleSelected() | Reset selected image in single selection mode |
removeFromMultipleSelected() | Remove from selected list in multiple selection mode |
resetMultipleSelection(id) | Reset all selected list in multiple selection mode |
isExistInArray(id) | Will return object image if exist, undefined if not exist |
Example can be found here :
Thanks for inspiration : https://github.com/rvera/image-picker
- Via trakteer
- Direct support, send me an email
If you'd like to contribute, head to the contributing guidelines. Inside you'll find directions for opening issues, coding standards, and notes on development.
Hope will usefull for you all.
Copyright © 2017 Built with ❤️ by Irfan Maulana