00:00:00
ImageViewer 图片预览
图片预览
通过 createImageViewer 函数来打开图片预览
API
配置项
| 事件名 | 说明 | 类型 | 默认值 |
|---|---|---|---|
| urlList | 用于预览的图片链接列表 | string[] | [] |
| zIndex | 预览时遮罩层的 z-index | number / string | — |
| initialIndex | 初始预览图像索引,小于 url-list 的长度 | number | 0 |
| infinite | 是否可以无限循环预览 | boolean | true |
| hideOnClickModal | 是否可以通过点击遮罩层关闭预览 | boolean | false |
| teleported | image 自身是否插入至 body 元素上。 嵌套的父元素属性会发生修改时应该将此属性设置为 true | boolean | false |
| zoomRate | 图像查看器缩放事件的缩放速率。 | number | 1.2 |
| minScale | 图像查看器缩放事件的最小缩放比例 | number | 0.2 |
| maxScale | 图像查看器缩放事件的最大缩放比例 | number | 7 |
| closeOnPressEscape | 是否可以通过按下 ESC 关闭 | boolean | true |
| showProgress | 是否显示预览图片的进度条内容 | boolean | false |
方法
| 事件名 | 说明 | 类型 |
|---|---|---|
| close | 当点击 X 按钮或者在 hide-on-click-modal 为 true 时点击遮罩层时触发 | () => void |
| switch | 切换图像时触发。 | (index: number) => void |
| rotate | 旋转图像时触发。 | (deg: number) => void |
这样使用:
vue
<script setup lang="ts">
import { createImageViewer } from "vitepress-theme-teek";
const handleClick = () => {
createImageViewer({ onSwitch: () => {}, onRotate: () => {} });
};
</script>
<template>
<button @click="handleClick">点击打开图片预览</button>
</template>