一个简单的验证码实现

一个简单的验证码效果
Installation

npm install validate-coder yarn add validate-coder 在Vue中使用

<template> <div> <input type="text" v-model="inputValue" @blur="submit" /> <div ref="coderContainer" @click="refresh"></div> </div> </template> <script setup lang="ts"> import { ref, onMounted } from "vue"; import { getValidateCoder } from "validate-coder"; const coderContainer = ref<HTMLDivElement>(); const validateCoder = ref<string>(); const inputValue = ref<string>(); //生成或更新验证码 const changeCode = () => { validateCoder.value = getValidateCoder( coderContainer.value as HTMLDivElement ); }; onMounted(() => { changeCode(); }); const refresh = () => { changeCode(); }; const submit = () => { if (!inputValue.value) return; if (validateCoder.value === inputValue.value) { console.log("验证通过"); } else { console.log("验证失败"); changeCode(); } }; </script> 在react中使用

import { useState, useRef, useEffect } from "react"; import { getValidateCoder } from "validate-coder"; function App() { const dom = useRef<HTMLDivElement>(null); const [code, setCode] = useState<string>(); //初始化验证码 useEffect(() => { setCode(getValidateCoder(dom.current as HTMLDivElement)); }, []); //更新验证码 const refresh = () => { setCode(getValidateCoder(dom.current as HTMLDivElement)); }; const changeInput = (e: any) => { if (code !== e.target.value) { console.log("验证码不正确"); //校验失败 setCode(getValidateCoder(dom.current as HTMLDivElement)); return; } else { console.log("验证通过"); //校验成功 } }; return ( <> <input type="text" onBlur={changeInput} /> <div onClick={refresh} ref={dom}></div> </> ); } export default App;

版权声明:

1、该文章(资料)来源于互联网公开信息,我方只是对该内容做点评,所分享的下载地址为原作者公开地址。
2、网站不提供资料下载,如需下载请到原作者页面进行下载。