# go-captcha-react **Repository Path**: wenlng/go-captcha-react ## Basic Information - **Project Name**: go-captcha-react - **Description**: 🖖 GoCaptcha for React, which implements click mode, slider mode, drag-drop mode and rotation mode. - **Primary Language**: JavaScript - **License**: MIT - **Default Branch**: master - **Homepage**: http://gocaptcha.wencodes.com/package/react/ - **GVP Project**: No ## Statistics - **Stars**: 0 - **Forks**: 0 - **Created**: 2021-12-13 - **Last Updated**: 2024-12-27 ## Categories & Tags **Categories**: Uncategorized **Tags**: None ## README

Go Captcha

React 行为验证码


> [English](README.md) | 中文

⭐️ 如果能帮助到你,请随手给点一个star

QQ交流群:178498936

Poster
## 安装 ```shell yarn add go-captcha-react # or npm install go-captcha-react # or pnpm install go-captcha-react ``` ```ts import GoCaptcha from 'go-captcha-react'; ``` ## 点选式 ```jsx ``` ```ts // config = {} interface Config { width?: number; height?: number; thumbWidth?: number; thumbHeight?: number; verticalPadding?: number; horizontalPadding?: number; showTheme?: boolean; title?: string; buttonText?: string; iconSize?: number; dotSize?: number; } // data = {} interface Data { image: string; thumb: string; } // events = {} interface Events { click?: (x: number, y: number) => void; refresh?: () => void; close?: () => void; confirm?: (dots: Array, reset:() => void) => boolean; } // component method interface ClickMethods { reset: () => void, clear: () => void, refresh: () => void, close: () => void, } // export component method interface ExportMethods { reset: () => void, clear: () => void, refresh: () => void, close: () => void, } ``` ## 滑动式 ```jsx ``` ```ts // config = {} interface SlideConfig { width?: number; height?: number; thumbWidth?: number; thumbHeight?: number; verticalPadding?: number; horizontalPadding?: number; showTheme?: boolean; title?: string; iconSize?: number; scope ?: boolean; } // data = {} interface SlideData { thumbX: number; thumbY: number; thumbWidth: number; thumbHeight: number; image: string; thumb: string; } // events = {} interface SlideEvents { move?: (x: number, y: number) => void; refresh?: () => void; close?: () => void; confirm?: (point: SlidePoint, reset:() => void) => boolean; } // export component method interface ExportMethods { reset: () => void, clear: () => void, refresh: () => void, close: () => void, } ``` ## 拖拽式 ```jsx ``` ```ts // config = {} interface SlideRegionConfig { width?: number; height?: number; thumbWidth?: number; thumbHeight?: number; verticalPadding?: number; horizontalPadding?: number; showTheme?: boolean; title?: string; iconSize?: number; scope ?: boolean; } // data = {} interface SlideRegionData { thumbX: number; thumbY: number; thumbWidth: number; thumbHeight: number; image: string; thumb: string; } // events = {} interface SlideRegionEvents { move?: (x: number, y: number) => void; refresh?: () => void; close?: () => void; confirm?: (point: SlideRegionPoint, reset:() => void) => boolean; } // export component method interface ExportMethods { reset: () => void, clear: () => void, refresh: () => void, close: () => void, } ``` ## 旋转式 ```jsx ``` ```ts // config = {} interface Config { width?: number; height?: number; thumbWidth?: number; thumbHeight?: number; verticalPadding?: number; horizontalPadding?: number; showTheme?: boolean; title?: string; iconSize?: number; scope ?: boolean; } // data = {} interface Data { angle: number; image: string; thumb: string; } // events = {} interface Events { rotate?: (angle: number) => void; refresh?: () => void; close?: () => void; confirm?: (angle: number, reset:() => void) => boolean; } // export component method interface ExportMethods { reset: () => void, clear: () => void, refresh: () => void, close: () => void, } ``` ## 按钮 ```vue ``` ```ts interface _ { config?: CaptchaConfig; clickEvent?: () => void; disabled?: boolean; type?: "default" | "warn" | "error" | "success"; title?: string; } export interface CaptchaConfig { width?: number; height?: number; verticalPadding?: number; horizontalPadding?: number; } ```
## 👍 赞助一下