建设银行流水账网站查询云开发工程师

bicheng/2025/10/13 20:16:36/文章来源:
建设银行流水账网站查询,云开发工程师,门店设计方案,绿派网站建设前言 之前业务系统中验证码一直是由后端返回base64与一个验证码的字符串来实现的#xff0c;想了下#xff0c;前端其实可以直接canvas实现#xff0c;减轻服务器压力。 实现 子组件#xff0c;允许自定义图片尺寸(默认尺寸为100 * 40)与验证码刷新时间(默认时间为60秒)…前言 之前业务系统中验证码一直是由后端返回base64与一个验证码的字符串来实现的想了下前端其实可以直接canvas实现减轻服务器压力。 实现 子组件允许自定义图片尺寸(默认尺寸为100 * 40)与验证码刷新时间(默认时间为60秒)。同时暴露绘制验证码方法drawPic(),允许父组件直接调用(需要利用ref实现)点击验证码也可手动刷新。 //VerifyCodeImg.vue !--验证码生成-- templatecanvas idcanvasDom :widthprops.canvasWidth :heightprops.canvasHeight clickdrawPic/canvas /templatescript setup import { onMounted, onBeforeUnmount, computed } from vue; let props defineProps({canvasWidth: { // 容器宽度type: Number,default: 100},canvasHeight: { // 容器高度type: Number,default: 40},refreshTime: {//验证码刷新间隔时间type: Number,default: 60} }),emits defineEmits([getVerifyCodeStr]),verifyCodeTimeId null,//定时器idrandomStr 0123456789abcdefghijklmnopqrstuvwxyz,// 所有随机字符串trueRefreshTime computed(() {return props.refreshTime * 1000;}),verifyCodeStr ;//验证码字符串onMounted(() {initVerifyCodeImg(); });// 初始化 const initVerifyCodeImg () {drawPic();verifyCodeTimeId setInterval(() {drawPic();}, trueRefreshTime.value); };// 绘制验证码图片 const drawPic () {randomCode();let canvas document.getElementById(canvasDom)let ctx canvas.getContext(2d)ctx.textBaseline bottom// 绘制背景ctx.fillStyle #e6ecfdctx.fillRect(0, 0, props.canvasWidth, props.canvasHeight)// 绘制文字for (let i 0; i verifyCodeStr.length; i) {drawText(ctx, verifyCodeStr[i], i)}drawLine(ctx)drawDot(ctx) };//4个随机字符 const randomCode () {verifyCodeStr for (let i 0; i 4; i) {let txt randomStr[randomNum(0, randomStr.length)];verifyCodeStr txt;}emits(getVerifyCodeStr, verifyCodeStr); };// 随机数 const randomNum (min, max) {return Math.floor(Math.random() * (max - min) min) };// 随机色 const randomColor (min, max) {let r randomNum(min, max)let g randomNum(min, max)let b randomNum(min, max)return rgb( r , g , b ) };// 绘制文字 const drawText (ctx, txt, i) {let fontSizeMin 30,// 字体最小值fontSizeMax 40;// 字体最大值ctx.fillStyle randomColor(50, 160) // 随机生成字体颜色ctx.font randomNum(fontSizeMin, fontSizeMax) px SimHei // 随机生成字体大小let x (i 1) * (props.canvasWidth / (verifyCodeStr.length 1))let y randomNum(fontSizeMax, props.canvasHeight - 5)var deg randomNum(-30, 30)// 修改坐标原点和旋转角度ctx.translate(x, y)ctx.rotate(deg * Math.PI / 180)ctx.fillText(txt, 0, 0)// 恢复坐标原点和旋转角度ctx.rotate(-deg * Math.PI / 180)ctx.translate(-x, -y) };// 绘制干扰线 const drawLine (ctx) {for (let i 0; i 4; i) {ctx.strokeStyle randomColor(100, 200)ctx.beginPath()ctx.moveTo(randomNum(0, props.canvasWidth), randomNum(0, props.canvasHeight))ctx.lineTo(randomNum(0, props.canvasWidth), randomNum(0, props.canvasHeight))ctx.stroke()} };// 绘制干扰点 const drawDot (ctx) {// 绘制干扰点for (let i 0; i 30; i) {ctx.fillStyle randomColor(0, 255)ctx.beginPath()ctx.arc(randomNum(0, props.canvasWidth), randomNum(0, props.canvasHeight), 1, 0, 2 * Math.PI)ctx.fill()} };//暴露绘制图片方法供父组件使用 defineExpose({drawPic });onBeforeUnmount(() {clearInterval(verifyCodeTimeId);//页面销毁前需要清除定时器 });/scriptstyle scoped langscss #canvasDom {cursor: pointer; } /style父组件使用。 VerifyCodeImg :refreshTime1 refverifyCodeImgRef getVerifyCodeStrgetVerifyCodeStr /结语 上面是vue3的实现你也可以改写为vue2的。 原文链接https://xiblogs.top/?id63

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

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

相关文章

怎样在网站做视频链接本地安装网站无法连接数据库

什么是索引 索引是帮助MySQL高效获取数据的数据结构。查看索引可以使用SHOW INDEX或EXPLAIN语句。 索引的工作原理 索引就像书的目录一样,当要查找书中的内容时,首先查看目录,通过目录可以快速定位内容的位置。 MySQL索引的工作方式也是一样的。当SQL语句执行查询时,优化器…

销售网站免费做导航网站制作教程

1. 问题背景 1.1 域名解析异常 近期开发的一个功能,需要在k8s集群容器环境中调用公司内部api,api提供了内网域名,解析内网域名异常导致请求超时,因此梳理了下DNS的知识点。 可以先看到下面👇这段配置,修…

有实力的网站建设公司简述网站开发的几个阶段

CSP-202109-2-非零段划分 【70分思路-暴力枚举】 这段代码的目的是在给定一个由自然数(非负整数)组成的数组后,通过选择一个适当的正整数 p,将数组中所有小于 p 的数变为 0,从而使得数组中非零段的数量达到最大。这里…

在阿里巴巴网站上怎么做贸易网站建设要规避的

根据月计划,为了要考虑把产品代码吃透。先对于计算几何,图像处理,测量学基础,slam进行 当然,也要把ue继续进行着。ue的rpg和底层渲染。收集下虚幻商城的免费资源,万一以后做独立游戏用得到。其他的可以暂时…

如何逐步提升网站权重外贸公司是什么类型的企业

一、源码特点 smm VUE电影售票管理系统是一套完善的完整信息管理类型系统,结合SSM框架和VUE、redis完成本系统,对理解vue java编程开发语言有帮助系统采用ssm框架(MVC模式开发),系 统具有完整的源代码和数据库&#…

网站开发人员岗位分布说明展示型网站建设流程方案

获取国内城市编码API接口 一、获取国内城市编码接口二、使用步骤1、接口2、请求参数 三、 案例和demo 一、获取国内城市编码接口 一款免费的帮助你获取取国内城市编码的接口 二、使用步骤 1、接口 重要提示:建议使用https协议,当https协议无法使用时再尝试使用http协议 请求…

重庆建设厂网站手机网站搭建公司

问题描述 在windows下,python在安装一些包的时候,常常会碰到time out的情况,如下图所示。不管再重试几次都是如此,这时候该怎么办呢? 解决方案 方案一:更换安装源(推荐使用豆瓣源&#xff09…

vrview wordpress动态ip做网站影响seo吗

文章目录 题目描述问题分析程序代码 题目描述 原题链接 小扣当前位于魔塔游戏第一层,共有 N 个房间,编号为 0 ~ N-1。每个房间的补血道具/怪物对于血量影响记于数组 nums,其中正数表示道具补血数值,即血量增加对应数值&#xff1b…

郑州做手机网站建设涵江网站建设

手机几乎是每个成年人人手一个以上,市场非常大,加之产品更新迭代速度快,每年都会推出多个型号、造型等,因此对高收入群体或爱机人群来说,新手机往往一年或二年时间就会换,或者直接购买当备用机等。 每个城…

浙江省建设银行纪检官方网站海口网站建设服务

工具介绍:matplotlib 是Python编程语言的一个绘图库及其数值数学扩展 NumPy。它为利用通用的图形用户界面工具包,如Tkinter, wxPython, Qt或GTK向应用程序嵌入式绘图提供了面向对象的应用程序接口(API)。还有一个基于状态机(如开放图形库OpenGL)的程序py…

要做网站工商注册需要准备什么材料

其实现在的孩子从上初中开始,他们的学习压力就已经很大了,繁重的功课让他们经常用眼过度,导致早早就戴上小眼镜。所以要想孩子拥有一个良好的视力健康,不仅要从日常的坐姿、用眼习惯开始纠正、培养,夜晚学习时的那一盏…

郑州做网站的公司哪些广告公司起名字大全

1.用jmeter怎么进行测试? 使用JMeter进行测试的步骤如下: 启动JMeter,右键点击测试计划,选择添加->Threads(Users)->线程组,在线程组下创建请求。在请求中添加HTTP请求信息头,右键点击HTTP请求&…

互联网网站模板wordpress html5 支持

【试剂详情】 英文名称 mPEG-PA,mPEG-Propionic acid, Methoxy PEG PA, Methoxy PEG Propionic acid 中文名称 聚乙二醇单甲醚丙酸, 甲氧基-聚乙二醇-丙酸 外观性状 由分子量决定,固体或者液体 分子量 400&…

网站公告栏怎么做国外界面设计网站

本文主要内容:掌握Pointcut的12种用法。 Aop相关阅读 阅读本文之前,需要先掌握下面3篇文章内容,不然会比较吃力。 Spring系列第15篇:代理详解(java动态代理&CGLIB代理)Spring系列第30篇:jdk动态代理…

做网站快速排名软件做网站的费用会计分录

1 相关概念以及理解 1 python的元组与列表类似,不同之处在于元组的元素不可修改 2 有序且可重复 3 语法: (值1,值2,值3...值n) 最简单的元组为(值,) 而这个(值)并不是元组 4 关键字 tuple 5 因为元组不可修改,我们重新赋值元组的时候,只是改变了指向关系, 原来的元组还是依然…

网站购买域名吗九牛科技网站开发微信营销

File类概述和构造方法 File:它是文件和目录路径名的抽象表示 文件和目录是可以通过File封装成对象的 对于File而言,其封装的并不是一个真正存在的文件,仅仅是一个路径名而已,它可以存在,也可以不存在 我们对Fie的操…

网站底部有很多图标广州网站建设及推广

当我们听到“算法”这个词时,很自然地会想到数学。然而实际上,许多算法并不涉及复杂数学,而是更多地依赖基本逻辑,这些逻辑在我们的日常生活中处处可见。 在正式探讨算法之前,有一个有趣的事实值得分享:你…

设计好的集团网站建设多少钱建筑模板工

广度优先算法(Breadth-First Search)是在图和树领域的搜索方法,其核心思想是从一个起始点开始,访问其所有的临近节点,然后再按照相同的方式访问这些临近节点的节点,这种访问方式类似涟漪泛起,一…

南宁网站推广方案如何做12免费建站网站

一、ps全称:Adobe Photoshop ,Adobe Photoshop是由Adobe Systems 开发和发行的专门用于图形图像处理的软件。 二、PS的应用领域: 1.在平面设计中的应用 2.在插画设计中的应用 3.在网页设计中的应用 4.在界面设计中的应用 5.在数码艺术中的应用…