1.0.2 • Published 3 years ago

@wxwzl/vue-picture-viewer-pc v1.0.2

Weekly downloads
-
License
ISC
Repository
github
Last release
3 years ago

a vue web picture viewer

争对pc端的图片浏览插件

功能

  • 支持上一张,下一张
  • 支持放大,缩小,旋转,拖动,还原操作
  • 支持键盘和鼠标滚动等操作放大、缩小、旋转、拖动和还原操作
  • 提供了可定制样式的插槽
  • 支持vue-typescript工程所需的类型声明
  • rollup打包,体积小

安装

npm i -S @wxwzl/vue-picture-viewer-pc

使用

<template>
 <div id="app">
   <h1>pictureViewer</h1>
   <pictureViewer :images="images" :current.sync="current" :visible.sync="show"></pictureViewer>
 </div>
</template>

<script>
 import pictureViewer from "@wxwzl/vue-picture-viewer-pc";
 export default {
   name: "App",
   components: {
     pictureViewer,
   },
   data() {
     return {
       images: [
         "https://ss3.bdstatic.com/70cFv8Sh_Q1YnxGkpoWK1HF6hhy/it/u=1015940306,479093215&fm=26&gp=0.jpg",
         "https://timgsa.baidu.com/timg?image&quality=80&size=b9999_10000&sec=1605956277926&di=2cf6250b5b2e47dc06d0623b3f8ccf37&imgtype=0&src=http%3A%2F%2Fpic1.win4000.com%2Fwallpaper%2Fc%2F58b8e4af37aae.jpg",
         "https://timgsa.baidu.com/timg?image&quality=80&size=b9999_10000&sec=1605956277926&di=52c08246d39a9d8f2c61a6ce36b8a4cf&imgtype=0&src=http%3A%2F%2Fimg.ewebweb.com%2Fuploads%2F20190623%2F18%2F1561285221-LqWIvRregC.jpg",
         "https://timgsa.baidu.com/timg?image&quality=80&size=b9999_10000&sec=1605956277925&di=a3315105038c5bae632da761ebaa2dcf&imgtype=0&src=http%3A%2F%2Fimg.08087.cc%2Fuploads%2F20200222%2F19%2F1582371875-QcRoebCxND.jpeg",
         "https://timgsa.baidu.com/timg?image&quality=80&size=b9999_10000&sec=1605956277925&di=c62fdbb60ff1f21aacbd18a15f984423&imgtype=0&src=http%3A%2F%2Fpic23.nipic.com%2F20120823%2F10789347_180954146100_2.jpg",
         "https://timgsa.baidu.com/timg?image&quality=80&size=b9999_10000&sec=1605956277921&di=83d17784badeeed73f6e598ca0fbde2d&imgtype=0&src=http%3A%2F%2Fpic1.win4000.com%2Fwallpaper%2Fc%2F55fbd60aa3581.jpg",
       ],
       current:0,
        show:true,
     };
   },
 };
</script>

组件API

props属性

images: 要浏览的图片数组,类型:Array,默认值:[],必选。

zIndex: 组件的z-index;因为组件根节点采用fixed定位,类型:number,默认值:1000,可选。

current:当前所展示的图片在images数组中的索引,类型:number,默认值:0,可选。

visible:控制组件显示或隐藏,类型:boolean,默认值:false,必选。

appendToBody: 控制是否将组件的挂在到body元素上而不是挂载组件当前位置,类型:boolean,默认值:false,可选。

minRotate: 控制旋转功能的每次旋转的角度,类型:number,默认值:90,可选。

minAdd:控制旋放大缩小功能的每次增量,类型:number且在(0,1),默认值:0.1,可选。

preload: 是否开启图片预加载,类型:boolean,默认值:true,可选。

closeOnClickModal: 控制点击遮罩是否隐藏组件,类型:boolean,默认值:false,可选。

方法

before: 上一张,参数:无。

next: 下一张,参数:无。

close: 隐藏组件,参数:无。

magnify: 放大当前所展示的图片,参数:无。

deflate: 缩小当前的所展示的图片,参数:无。

handLeft: 向左旋转,参数:无。

handRight: 向右旋转,参数:无。

resetStyle: 清除当前所展示的图片的所有变换,参数:无。

install: 全局注册组件方法:参数:Vue。

事件

close:组件被隐藏时触发,参数:无。

change:所展示的图片切换时即current属性变化时触发,参数:最新的索引值

visible-changed:组件的显隐状态变化时,参数:显隐状态

插槽:

actions: 用于定制所有按钮元素

before:用于定制上一张按钮元素

next:用于定制下一张按钮元素

close:用于定制关闭按钮元素

bottom:用于定制顶部变换按钮的元素

键盘快捷键支持

ESC:隐藏组件功能按键。

SPACE:清除当前所展示的图片的所有变换功能按键。

LEFT_ARROW:上一张功能按键。

RIGHT_ARROW:下一张功能按键。

UP_ARROW:放大功能按键。

DOWN_ARROW:缩小功能按键。

样式定制

参考example工程
1.0.2

3 years ago

1.0.1

3 years ago

1.0.0

3 years ago

0.0.10

3 years ago

0.0.9

3 years ago

0.0.8

3 years ago

0.0.5

3 years ago

0.0.7

3 years ago

0.0.6

3 years ago

0.0.4

3 years ago

0.0.3

3 years ago

0.0.1

3 years ago

0.0.2

3 years ago