6

一个 小小vue2.0的图片查看器组件

闲暇下来封装了一个 vue2.0的图片查看器组件,通过这个更能方便清楚地查看列表的一张张图片。已经兼容 pc 跟移动端,通过 npm 来下载安装使用。
This is an example

1、安装

npm install vue-imageview --save

2、使用

// example

<template>
    <div class="hello">
        <transition name="slide-fade" class="fadeView">
            <div v-if="show">
                <image-view :imgArr="imgArr" 
                            :showImageView="true"
                            :imageIndex="imageIndex"
                            v-on:hideImage="hideImageView"></image-view>
            </div>
        </transition>
        <h1 @click="showImgView">显示隐藏</h1>
        <img v-for="(item, index) in imgArr" :src="item" @click="selectImg(index)">
    </div>
</template>

<script>
  import imageView from 'vue-imageview'
  export default {
    name: 'hello',
    components: {
      'image-view': imageView
    },
    data () {
      return {
        // 图片数组
        imgArr: ['/public/img/1.jpeg', '/public/img/2.jpeg', '/public/img/2.jpeg', '/public/img/3.jpeg', '/public/img/4.jpeg', '/public/img/5.jpeg', '/public/img/6.jpeg'],
        // 显示组件
        show: false,
        // 从哪一张图片开始
        imageIndex: 0
      }
    },
    methods: {
      showImgView () {
        this.show = true
      },
      hideImageView () {
        this.show = false
      },
      selectImg (index) {
        this.show = true
        this.imageIndex = index
      }
    }
  }
</script>

<style scoped>
    .slide-fade-enter-active {
        transition: opacity .5s ease;
    }

    .slide-fade-leave-active {
        transition: opacity .5s ease;
    }

    .slide-fade-enter, .slide-fade-leave-active {
        opacity: 0;
    }
    h1, h2 {
        margin: 0;
        padding: 0;
    }
    img {
        display: block;
        margin: 10px auto;
        max-width: 400px;
    }
</style>

3、参数配置

参数 类型 说明 必要
imgArr array 图片数组
show blooean 显示组件开关
imageIndex number 从第几张图片开始显示 No

ps: 以后会更新到多指操作,放大、缩小、选择,加文字说明等等等等,凑字凑字数~凑字凑字数~凑字凑字数~
自勉吧~~~


naice
2k 声望161 粉丝

很多事情不是因为有希望才去坚持,而是坚持了才有希望。