vue3使用v-viewer图片预览工具

v-viewer中文文档

安装

npm install v-viewer@next

全局注册 main.js文件中

import Viewer from 'v-viewer'
import 'viewerjs/dist/viewer.css'
const app = createApp(App)
//可以指定一些默认配置
app.use(Viewer, {
        Options: {
            'inline': true,
            'button': true, //右上角按钮
            "navbar": true, //底部缩略图
            "title": true, //当前图片标题
            "toolbar": true, //底部工具栏
            "tooltip": true, //显示缩放百分比
            "movable": true, //是否可以移动
            "zoomable": true, //是否可以缩放
            "rotatable": true, //是否可旋转
            "scalable": true, //是否可翻转
            "transition": true, //使用 CSS3 过度
            "fullscreen": true, //播放时是否全屏
            "keyboard": true, //是否支持键盘
            "url": "data-source",
        }
    })

使用

  • 通过指令形式调用
<div v-viewer>
	<img v-for="src in images" :key="src" :src="src"/>
</div>
  • 组件形式使用
<viewer :images="images">
  <img v-for="src in images" :key="src" :src="src">
</viewer>
  • 通过API调用
<a v-if="images?.length" @click="showImagesInViewer(images)">查看</a>


import { api as viewerApi } from "v-viewer";

const showImagesInViewer = (urls)=> {
    // urls = [{src:'',},]
	urls instanceof Array &&
	urls?.length &&
	viewerApi({ images: urls })
},
  • 示例

我用的是第三种,直接通过事件触发,不需要图片出现后再去点击图片触发预览

更多使用方法和配置项可参考v-viewer中文文档

 

posted @ 2024-04-11 17:20  李云蹊  阅读(3405)  评论(0编辑  收藏  举报