This repository was archived by the owner on Oct 6, 2021. It is now read-only.

mazipan/vue-select-image

Repository files navigation

Vue 2.x component for selecting image from list

LicenseminifiedversiondownloadsTraviscodecov

https://mazipan..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
}]
FieldDescription
idUnique id for each image, will also set for id attribute on image DOM
srcSrc attribute for image
altAlt attribute for image
disabledImage 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

AttributeTypeDefaultDescription
:dataImagesArray[]Array of images that will be shown
:selectedImagesArray[]Array of initial selected images
:isMultipleBooleanfalseFlag to enable multiple selection
:useLabelBooleanfalseFlag to enable showing alt as label
:rootClassStringvue-select-imageClass for root element of this component
:activeClassString--selectedClass for active state, will concat with :rootClass
:hStringautoHeight of images, ex: '50px'
:wStringautoWidth of images, ex: '50px'
:limitNumber0To set maximum images can be select
Events AttrReturn
@onselectimageObject image selected
@onselectmultipleimageArray of object image has been selected
@onreachlimitWhen 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 NameUse 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://.com/rvera/image-picker

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