

























在前端项目开发中,人机验证是抵御机器人攻击、恶意注册、暴力破解与垃圾请求的关键防线。传统字符验证码体验差、易被识别,而滑动拼图验证码凭借操作简单、视觉友好、安全性强的优势,成为主流选择。
今天给大家推荐一款专为 Vue3 打造的轻量滑动拼图验证码组件 ——vue-sliding-puzzle,开箱即用、高度自定义,快速为你的项目加固安全防线。
安装命令非常简单,npm 直接安装:
bash
运行
npm install vue-sliding-puzzle --save
5 行代码快速集成,开箱即用:
vue
<template>
<Vcode :show="isShow" @success="onSuccess" @close="onClose" />
<button @click="onShow">开始验证</button>
</template>
<script setup>
import { ref } from "vue";
import Vcode from "vue-sliding-puzzle";
const isShow = ref(false);
// 打开验证
const onShow = () => isShow.value = true;
// 关闭弹窗
const onClose = () => isShow.value = false;
// 验证成功
const onSuccess = () => onClose();
</script>
开启干扰图,大幅提升机器识别难度:
vue
<template>
<Vcode
:show="isShow"
@success="onSuccess"
@close="onClose"
:slider-text="'请拖动滑块完成验证'"
:success-text="'验证通过'"
:interference-diagram-count="3"
/>
<button @click="onShow">开始验证</button>
</template>
<script setup>
import { ref } from "vue";
import Vcode from "vue-sliding-puzzle";
const isShow = ref(false);
const onShow = () => isShow.value = true;
const onClose = () => isShow.value = false;
const onSuccess = (deviation, obj) => {
console.log("偏差:", deviation);
console.log("耗时(ms):", obj.duration);
onClose();
};
</script>
设置 type="inside" 即可在页面内直接展示:
vue
<template>
<div class="verify-box">
<Vcode type="inside" :show="true" />
</div>
</template>
<style>
.verify-box {
position: relative;
width: 320px;
height: auto;
}
</style>
表格
| 参数 | 类型 | 默认值 | 说明 |
|---|---|---|---|
| show | Boolean | false | 是否显示验证码 |
| type | String | "modal" | "modal" 弹窗 / "inside" 内嵌 |
| canvas-width | Number | 310 | 画布宽度(px) |
| canvas-height | Number | 160 | 画布高度(px) |
| puzzle-scale | Number | 1 | 拼图块大小比例 0.2~2 |
| slider-size | Number | 50 | 滑块尺寸(px) |
| range | Number | 10 | 验证误差范围(px) |
| imgs | Array | null | 自定义背景图数组 |
| slider-text | String | "拖动滑块完成拼图" | 滑块提示文字 |
| success-text | String | "验证通过!" | 成功提示 |
| fail-text | String | "验证失败,请重试" | 失败提示 |
| interference-diagram-count | Number | 0 | 干扰图数量 |
| class-name | String | "" | 自定义样式类 |
| z-index | Number | 999 | 层级 |
组件提供完备的事件监听,方便业务逻辑处理:
vue-sliding-puzzle 是一款轻量、易用、安全、美观的 Vue3 滑动拼图验证码组件,无需复杂配置,几分钟即可完成接入,兼顾用户体验与前端安全。
如果你正在为 Vue3 项目寻找稳定的滑动验证码方案,强烈建议尝试此组件!
此内容由惯性聚合(RSS阅读器)自动聚合整理,仅供阅读参考。 原文来自 — 版权归原作者所有。