Skip to content

MeCaptcha 图片验证器 v2.15.0


原理

  • API 请求获取组件的初始化显示信息
  • 前端获取拖拽到指定位置的信息
  • API 请求验证接口,传递指定位置的信息,后端验证是否通过,根据验证结果显示验证成功或验证失败信息
    • 验证通过后,显示验证成功的信息,并存储验证成功的信息关键字段,用于后续的表单提交
    • 验证失败后,显示验证失败的信息
      • 验证过期
      • 位置错误
      • 已使用过等等

按需引入

ts
import { createApp } from 'vue'
import App from './App.vue'
import { MeCaptcha } from 'mine-h5-ui'
import 'mine-h5-ui/styles/MeCaptcha.css'

createApp(App).use(MeCaptcha).mount('#app')

提示

  • 如果你觉得重新编写 HTML 结构麻烦,可以直接复制下面的代码。

代码演示

基础用法

  • 通过属性 visible 来设置组件的显示,默认为 false
  • 通过属性 item 来设置组件的显示
html
<script setup lang="ts">
  const visible = ref(false)
  const item = {
    bgElem: {
      url: '', // 背景图
      size: [] // [宽度, 高度]
    },
    elem: {
      initPos: [], // [x, y]
      url: '', // 元素图
      size: [] // [宽度, 高度]
    }
  }
</script>
<template>
  <me-captcha v-model:visible="visible" :item="item" />
</template>

API

参数

参数说明类型可选值默认值版本
v-model:visible显示状态true / false--falsev2.15.0
v-model:statusCode状态码number1: 成功 / 2: 校验错误 / 3: 过期--v2.15.0
item显示信息ItemData----v2.15.0

ItemData

ts
interface ItemData {
  bgElem: {
    url: string // 背景图
    size: number[] // [宽度, 高度]
  }
  elem: {
    initPos: number[] // [x, y]
    url: string // 元素图
    size: number[] // [宽度, 高度]
  }
}

方法

方法名说明回调参数版本
check拖拽结束后的验证触发事件[x, y]: number[]v2.15.0
refresh点击刷新按钮触发事件--v2.15.0

基于 MIT 许可发布