@miitvip/captcha

Makeit Captcha 滑块验证码组件,基于 Vue3.x + Vite6.x + Canvas 开发,动态生成验证滑块,结合后端进行二次校验,能有效避免被恶意抓取后的模拟验证,进一步提升验证码的可靠性。( Makeit Captcha slider verification code component, developed based on Vue3.x + Vite6.x + Canvas, dynamically generates a verification slider and com
1,021 177
Install
npm install @miitvip/captcha
Latest Version:1.0.0
Vue:3
License:MIT
Last Updated:Jul 8, 2025
Links: GitHub  ·  npm
Maintainer: miitvip

Makeit Captcha

基于 Vue3.x + Vite6.x 开发,动态生成验证滑块的验证码组件

npm package npm_downloads MIT node vue vite axios ant design vue

关于

Makeit Captcha 滑块验证码组件,基于 Vue3.x + Vite6.x + Canvas 开发,动态生成验证滑块,结合后端进行二次校验,能有效避免被恶意抓取后的模拟验证,进一步提升验证码的可靠性。

:white_check_mark: 自定义主题配色 :evergreen_tree:

:white_check_mark: 自定义初始化验证码 :sparkling_heart:

:white_check_mark: 自定义远程校验结果 :collision:

:white_check_mark: 动态配置验证码弹窗背景图 :hibiscus:

安装

npm i @miitvip/captcha

使用

import { createApp } from 'vue'
import MakeitCaptcha from '@miitvip/captcha'
import '@miitvip/captcha/dist/makeit-captcha.min.css'
import App from './app.vue'

const app = createApp(App)
app.use(MakeitCaptcha)
app.mount('#app')

国际化(本身项目包含 vue-i18n)

/**
 * 如果项目本身有引入 vue-i18n,请导出 setupCaptchaI18n,
 * 且在 captcha 组件 install 之前调用。
 * 避免 vue-i18n 冲突(多次实例化)
 * 如下示例:
 */
import { createApp } from 'vue'
import MakeitCaptcha, { setupCaptchaI18n } from '@miitvip/captcha'
import '@miitvip/captcha/dist/makeit-captcha.min.css'
import App from './app.vue'

const app = createApp(App)
const i18n = createI18n({
    legacy: false,
    locale: 'zh-cn',
    messages: {}
})
setupCaptchaI18n(i18n)
app.use(MakeitCaptcha)
app.mount('#app')

示例

<!-- 自定义初始化 / 校验等 -->
<template>
    <div class="mi-captchas">
        <!-- 基础效果 -->
        <mi-captcha ref="captcha" />

        <!-- 手动触发重置 -->
        <a @click="reset">重置</a>

        <!-- 自定义主题色 ( 颜色值  ) -->
        <mi-captcha primary-color="#2F9688" />

        <!-- 自定义初始化 / 校验等 -->
        <mi-captcha
            theme-color="#be6be0"
            init-action="v1/captcha/init"
            @init="initAfter"
            verify-action="v1/captcha/verification"
            :verify-params="params.verify"
        />
    </div>
</template>

<script setup>
    import { ref, reactive } from 'vue'

    const captcha = ref(null)

    const params = reactive({
        verify: { key: null }
    })

    const initAfter = (res) => {
        if (res?.ret?.code === 200) {
            localStorage.setItem('mi-captcha-key', res?.data?.key)
            params.verify.key = res?.data?.key
        }
    }

    const reset = () => {
        console.log('reinitialize')
        captcha.value?.reset(false)
    }
</script>

更多

更多定制化内容及使用请查看在线示例:https://admin.makeit.vip/components/captcha

Related Packages

@miitvip/admin-pro

An out-of-box UI solution for enterprise applications built on Vue3.x + Vite5.x...

31,121 351
makeit-modal

Makeit Modal 弹窗组件,是基于 Vue3.0 + Vite 开发。该组件可以在当前页面打开一个浮...

1,012 11
ilab-makeit-captcha

Makeit Captcha 滑块验证码组件,是基于 Vue3.x + Vite2.x + Canvas 开发,动态生成验...

1,406 177
makeit-admin-pro

A unified template used to backend management built on Vue3.x + Vite4.x + Ant De...

41,697 351

Version History

Version Released Vue License
1.0.0 ^3.5.17 MIT