Solid Package
安装
shell
yarn add go-captcha-solid
# or
npm install go-captcha-solid
# or
pnpm install go-captcha-solid
yarn add go-captcha-solid
# or
npm install go-captcha-solid
# or
pnpm install go-captcha-solid
ts
import GoCaptcha from 'go-captcha-solid';
import GoCaptcha from 'go-captcha-solid';
点选式
jsx
<GoCaptcha.Click
config={{}}
data={{}}
events={{}}
ref={domRef}
/>
<script>
// call methods
const domRef
domRef.clear()
domRef.refresh()
</script>
<GoCaptcha.Click
config={{}}
data={{}}
events={{}}
ref={domRef}
/>
<script>
// call methods
const domRef
domRef.clear()
domRef.refresh()
</script>
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<ClickDot>, 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,
}
// 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<ClickDot>, 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
<GoCaptcha.Slide
config={{}}
data={{}}
events={{}}
ref={domRef}
/>
<script>
// call methods
const domRef
domRef.clear()
domRef.refresh()
</script>
<GoCaptcha.Slide
config={{}}
data={{}}
events={{}}
ref={domRef}
/>
<script>
// call methods
const domRef
domRef.clear()
domRef.refresh()
</script>
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,
}
// 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
<GoCaptcha.SlideRegion
config={{}}
data={{}}
events={{}}
ref={domRef}
/>
<script>
// call methods
const domRef
domRef.clear()
domRef.refresh()
</script>
<GoCaptcha.SlideRegion
config={{}}
data={{}}
events={{}}
ref={domRef}
/>
<script>
// call methods
const domRef
domRef.clear()
domRef.refresh()
</script>
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,
}
// 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
<GoCaptcha.Rotate
config={{}}
data={{}}
events={{}}
ref={domRef}
/>
<script>
// call methods
const domRef
domRef.clear()
domRef.refresh()
</script>
<GoCaptcha.Rotate
config={{}}
data={{}}
events={{}}
ref={domRef}
/>
<script>
// call methods
const domRef
domRef.clear()
domRef.refresh()
</script>
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,
}
// 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
<GoCaptcha.Button />
<GoCaptcha.Button />
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;
}
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;
}
主题颜色配置
主题颜色配置请参考 验证码主题配置。