vue3中使用 vue3-slide-verify 滑块验证登录

在日常项目中我们实现登录的时候,会进行人为操作验证,这里使用滑块验证,常见的验证方式
我们借助插件 vue3-slide-verify

安装

npm install --save vue3-slide-verify

使用

在页面创建组件verification.vue  名字随意写入下面代码
<template><div class="silde_box"><slide-verify class="silde_box" ref="block" slider-text="向右滑动->" :accuracy="1" @again="onAgain" @success="onSuccess"@fail="onFail" @refresh="onRefresh" :imgs="img"></slide-verify><button class="btn" @click="handleClick">在父组件可以点我刷新哦</button><div>{{ msg }}</div></div>
</template><script lang="ts" setup>
import { ref } from "vue";
import SlideVerify, { SlideVerifyInstance } from "vue3-slide-verify"; //引入滑动验证组件
import "vue3-slide-verify/dist/style.css"; //引入滑动验证组件样式const msg = ref("");
//自定义图片
const img = ref(["https://img0.baidu.com/it/u=1552632757,378376738&fm=253&fmt=auto&app=138&f=JPEG?w=500&h=281", "https://img2.baidu.com/it/u=4260616497,4153321689&fm=253&fmt=auto&app=138&f=JPEG?w=656&h=435"])
const block = ref<SlideVerifyInstance>();const onAgain = () => {msg.value = "检测到非人为操作的哦! try again";// 刷新block.value?.refresh();
};
//成功的回调
const onSuccess = (times: number) => {msg.value =  "验证通过,耗时" + (times / 1000).toFixed(1) + "秒";;
};
//失败的回调
const onFail = () => {msg.value = "验证不通过";
};
//点击刷新回调
const onRefresh = () => {msg.value = "点击了刷新小图标";
};const handleClick = () => {// 刷新block.value?.refresh();msg.value = "";
};
</script>
<style scoped>
.silde_box {margin: 0 auto;
}
</style>
在需要用到的页面进行引入使用
<template><div><Vverify></Vverify></div>
</template><script setup lang="ts">
import { ref, watchEffect } from 'vue'
import  Vverify from "./verification.vue"; //引入组件
</script><style lang="scss" scoped>
</style>

以上操作就可以实验滑块验证 

加遮罩 根据需求添加

在项目中我们使用滑块验证一般禁止进行其他操作,所有我们需要添加遮罩

<template><div><!-- 遮罩层 --><div class="mask"><!-- 用来放置验证模块 --><div class="verification"> <Vverify></Vverify></div></div></div>
</template><script setup lang="ts">
import  Vverify from "./verification.vue";</script><style lang="scss" scoped>
//遮罩层的css设置
.mask {position: fixed;top: 0;left: 0;width: 100%;height: 100%;overflow: hidden;z-index: 999999;background: rgba(0, 0, 0, 0.5);
}
//用来放置验证模块css
.verification {position: absolute;top: 50%;left: 50%;transform: translate(-50%, -50%);background: white;
}
</style>

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/646548.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

Linux破解密码

破解root密码&#xff08;Linux 7&#xff09; 1、先重启——e 2、Linux 16这一行 末尾加rd.break&#xff08;不要回车&#xff09;中断加载内核 3、再ctrlx启动&#xff0c;进入救援模式 4、mount -o remount&#xff0c;rw /sysroot/——&#xff08;mount挂载 o——opti…

大二下 课程安排

专业选修 web前端开发 信息与网络安全 必修 数据库原理 4 概率论与数理统计 4 软件设计与体系结构 3 编译技术 3 软件设计实践 2 大学体育 1 选修 &#xff08;待更新&#xff09; 目标 大二下一定要好好学习&#xff0c;不然最后总的排名真的就垫底了&#xff0c;大一上…

选择海外云手机需要考虑什么?

随着跨境电商行业的蓬勃发展&#xff0c;企业们纷纷寻找提升平台流量和广告投放效果的方法&#xff0c;这已成为业界的当务之急。传统的宣传模式在国内受到直播和链接带货等新兴方式的冲击&#xff0c;而在国外&#xff0c;类似的趋势也在悄然兴起&#xff0c;呈现出广阔的发展…

Halcon优化模板匹配速度

Halcon优化模板匹配速度 文章目录 Halcon优化模板匹配速度1. 缩小搜索空间2. 使用图像下采样 优化匹配速度可以从两个方面入手&#xff1a;缩小搜索空间和使用图像下采样。本节将分别从这两个方面进行解释。 1. 缩小搜索空间 搜索空间指搜索的范围&#xff0c;它是一个广义的概…

服务器运维小技巧(二)——如何进行监控告警

服务器运维难度高的原因&#xff0c;很大程度是因为服务器一旦出现问题&#xff0c;生产环境的业务就会受到严重影响&#xff0c;极有可能带来难以承担的后果。因此这份工作要求工程师保持高要求的服务质量&#xff0c;能够快速响应问题&#xff0c;及时解决问题。 但是“及时…

google-webrtc 原理

Google WebRtc Android 使用详解(包括客户端和服务端代码) - 知乎 (zhihu.com) 【记】Android使用WebRTC未释放资源导致的内存泄露 - 掘金 (juejin.cn)

Eureka-第一篇

​ 一、Eureka的概述 Eureka的基本概念和作用 Eureka是一个基于REST的服务&#xff0c;主要用于定位运行在AWS域中的中间层服务&#xff0c;以达到负载均衡和中间层服务故障转移的目的。Eureka是Netflix开发的服务发现框架&#xff0c;主要用于解决在云计算环境中动态位置服…

[docker] Docker镜像的创建以及Dockerfile的使用

一、Dokcer镜像的创建 创建镜像有三种方法&#xff0c;分别为基于已有镜像创建、基于本地模板创建以及基于Dockerfile创建。 1.1 基于现有镜像创建 &#xff08;1&#xff09;首先启动一个镜像&#xff0c;在容器里做修改docker run -it --name web centos:7 /bin/bash …

C语言应用层程序热补丁

一、热补丁简介 一个正在运行的程序&#xff0c;要是有某函数或某流程有问题&#xff0c;需要修改&#xff0c;有两个方式&#xff1a; 1.通过设置LD_PRELOAD把需要的库重新定向&#xff0c;但这种方式需要重启正在运行的程序。 2.通过修改可执行文件某个函数指向的地址&…

【C++】介绍STL中list容器的常用接口

目录 一、STL中的list简介 二、构造函数 2.1 默认构造函数 2.2 填充构造&#xff08;用n个相同的值构造&#xff09; 2.3 迭代器构造 2.4 拷贝构造和赋值运算符重载 三、迭代器 3.1 正向迭代器 3.2 反向迭代器 四、容量相关 4.1 获取list中有效数据的个数 4.2 判…

android camera的使用以及输出的图像格式

一、Camera 1.1、结合SurfaceView实现预览 1.1.1、布局 <?xml version"1.0" encoding"utf-8"?> <LinearLayout xmlns:android"http://schemas.android.com/apk/res/android"xmlns:app"http://schemas.android.com/apk/res-au…

burp靶场--CSRF

burp靶场–CSRF https://portswigger.net/web-security/csrf#what-is-csrf ### 什么是 CSRF&#xff1f; 跨站请求伪造&#xff08;也称为 CSRF&#xff09;是一种 Web 安全漏洞&#xff0c;允许攻击者诱导用户执行他们不打算执行的操作。它允许攻击者部分规避同源策略&#…

Unity 解决异步分发方案

很多程序&#xff0c;包括游戏、小程序、一些AR、VR的程序&#xff0c;因为客户端体量太大&#xff0c;更新频繁都涉及到远程热更新的问题&#xff0c;解决这类问题的思路基本上是客户端解决主要功能&#xff0c;资源类放置在服务器。 下面记录下&#xff1a; 1.CDN或者云轻量…

Windows11操作系统百科

简介 Windows 11是由微软公司&#xff08;Microsoft&#xff09;开发的操作系统&#xff0c;应用于计算机和平板电脑等设备 [1]。于2021年6月24日发布 [3]&#xff0c;2021年10月5日发行 [29]。 Windows 11提供了许多创新功能&#xff0c;增加了新版开始菜单和输入逻辑等 [6]…

安装ddddocr中遇到的问题

1、需要先安装&#xff1a; pip3 install pyinstaller --no-use-pep517 pip install scikit-build pip install setuptools pip install pyinstaller pip install pillow 重要是的是保证一个python 环境&#xff0c;多个python环境会导致各种问题。并且保证python>3.8…

vue2面试题:vue组件之间的通信方式有哪些?

vue2面试题&#xff1a;vue组件之间的通信方式有哪些&#xff1f; 回答思路&#xff1a;1.组件通信的目的-->2.组件通信的分类-->3.组件通信的方案1.组件通信的目的2.组件通信的分类3.组件通信的方案&#xff08;1&#xff09;通过props传递数据&#xff08;2&#xff09…

安装宝塔面板后k8s所在节点pod无法正常工作解决方法,kubernetes k8s 与宝塔面板冲突解决方法

在实际项目过程中我们使用了k8s 在生产环境中运行管理服务。 但是对服务器的状态管理我们使用了宝塔面板进行 K8s 版本1.2.8 宝塔面板 版本 8.05 操作步骤是这样的。 1.完成1.2.8 k8s的节点安装&#xff0c;并正常运行服务。 过程略 2.安装宝塔面板 ​ yum install -y …

基于springboot留守儿童爱心网站源码和论文

随着留守儿童爱心管理的不断发展&#xff0c;留守儿童爱心网站在现实生活中的使用和普及&#xff0c;留守儿童爱心管理成为近年内出现的一个热门话题&#xff0c;并且能够成为大众广为认可和接受的行为和选择。设计留守儿童爱心网站的目的就是借助计算机让复杂的管理操作变简单…

Docker的Cgroup资源限制

目录 前瞻 CPU 资源控制 设置CPU使用率上限 设置CPU资源占用比&#xff08;设置多个容器时才有效&#xff09; 设置容器绑定指定的CPU 内存资源限制 对磁盘IO配额控制&#xff08;blkio&#xff09;的限制 前瞻 Docker 通过 Cgroup 来控制容器使用的资源配额&#xff0c…