基于 Swiper 的图片 PPT 播放组件
· 3 min read
这篇文章介绍一个适用于 Docusaurus / React 页面中的图片幻灯片组件。它的目标很朴素:用户只需要提供一组图片 URL,就能把它们当成 PPT 一页一页播放。
功能演示
组件特点
- 仅需传入图片 URL 数组即可使用
- 支持鼠标点击“上一页 / 下一页”按钮
- 支持键盘左右方向键切换
- 支持缩略图导航,快速跳到指定页
- 支持一键进入 / 退出全屏播放
- 在最后一页继续点击“下一页”时,会从第一页重新开始
- 支持页码计数与分页圆点
- 适合把一组教学图片作为手动播放的 PPT 展示
基本用法
import ImagePptSwiper from './_components/ImagePptSwiper';
<ImagePptSwiper
title="示例幻灯片"
images={[
'https://example.com/slide-1.jpg',
'https://example.com/slide-2.jpg',
'https://example.com/slide-3.jpg'
]}
/>
支持的图片数据格式
除了纯字符串 URL 数组,也支持对象数组,以便补充 alt 和 caption:
<ImagePptSwiper
images={[
{
src: 'https://example.com/slide-1.jpg',
alt: '启动前连接显示器',
caption: '先将 HDMI 线连接到显示器。'
},
{
src: 'https://example.com/slide-2.jpg',
alt: '连接机械臂',
caption: '再将另一端连接到机械臂。'
}
]}
/>
参数说明
| 参数 | 类型 | 默认值 | 说明 |
|---|---|---|---|
images | Array<string | { src, alt?, caption? }> | - | 必填,图片 URL 列表 |
title | string | - | 幻灯片标题 |
height | number | string | min(70vh, 560px) | 幻灯片高度 |
aspectRatio | string | 16 / 9 | 幻灯片宽高比 |
showPagination | boolean | true | 是否显示分页圆点 |
showCounter | boolean | true | 是否显示当前页码 |
showThumbnails | boolean | true | 是否显示缩略图导航 |
showFullscreenButton | boolean | true | 是否显示全屏播放按钮 |
loop | boolean | true | 是否启用循环切换 |
className | string | '' | 自定义类名 |
交互说明
- 鼠标点击底部按钮即可切换上一页 / 下一页
- 使用左右方向键也可以切换页面
- 点击缩略图可快速跳转到任意一页
- 点击“全屏播放”可进入沉浸式展示模式
- 在最后一页继续点击“下一页”时,会自动回到第一页继续播放
- 组件会显示当前页码,方便教学讲解时控制节奏
适合的场景
- 教学步骤图逐页展示
- 软件操作流程演示
- 设备连接示意图播放
- 将一组静态图片当成轻量级 PPT 使用
小结
这个组件并不是要取代专业演示软件,而是为了在 Docusaurus 文档或博客页面里,提供一种更自然的“图片逐页讲解”体验。轻量、直接、够用——很适合课程文档场景。




