跳到正文

OtpField

由可分别设置样式的输入格组成、长度受限的一次性验证码编辑器。

正在加载交互演示…

#导入

从 github.com/egoist/quickgui/go/ui 导入 ui。

import (
	"fmt"
	"github.com/egoist/quickgui/go/native"
	"github.com/egoist/quickgui/go/ui"
)

#用法

func OtpFieldExample() *ui.Element {
	code, setCode := ui.CreateSignal("")
	field := ui.NewOtpField(ui.OtpFieldRootProps{Value: code, Length: 6, ValidationType: "numeric", OnValueChange: func(next string, _ *native.Event) {
		setCode(next)
	}, OnComplete: func(value string, _ *native.Event) {
		fmt.Println("Complete:", value)
	}})
	inputs := make([]*ui.Element, 0, 6)
	for index := range 6 {
		inputs = append(inputs, field.Input(index))
	}
	return field.Root().Children(inputs)
}

#结构

  • otpField.Root
  • otpField.Input
  • otpField.Separator

#API 参考

展开条目查看说明和完整签名。短横线表示声明中未记录默认值。

NewOtpField

查看源码
ui.NewOtpField(props ...OtpFieldRootProps) *OtpFieldComponent

NewOtpField declares a OtpField instance. Optional props provide initial settings.

Reffunc(*native.Node)—

Receives the retained native node after construction. Keep imperative work in event or lifecycle callbacks.

func(*native.Node)
查看源码
Styleany—

Reusable layout, typography, color, and interaction-state styles. Build with ui.Style() and compose with Merge.

any
查看源码
ChildrenPartChildren—

Content mounted inside the component. Compound child callbacks run after the parent context exists.

PartChildren
查看源码
Disabledany—

Prevents activation and exposes the disabled state to accessibility. Compound parts inherit a disabled root.

any
查看源码
Rolestring—

Accessibility role override. Prefer the component’s built-in semantics.

string
查看源码
FocusOnPointerany—

Whether a pointer press moves keyboard focus to the control.

any
查看源码
Groupany—

Names this element as a group for descendant interaction-state styling.

any
查看源码
AriaLabelany—

Accessible name, especially for icon-only controls or controls without a visible label.

any
查看源码
TabIndex*float64—

Controls sequential keyboard focus order. Omit to retain the component’s default focus behavior.

*float64
查看源码
OnClickfunc(*native.Event)—

Called after QuickGUI resolves an activation, including supported keyboard activation.

func(*native.Event)
查看源码
OnDoubleClickfunc(*native.Event)—

Callback for double click. The signature below lists the event payload.

func(*native.Event)
查看源码
OnContextMenufunc(*native.Event)—

Callback for context menu. The signature below lists the event payload.

func(*native.Event)
查看源码
OnPointerfunc(*native.Event)—

Callback for pointer. The signature below lists the event payload.

func(*native.Event)
查看源码
OnMouseEnterfunc(*native.Event)—

Callback for mouse enter. The signature below lists the event payload.

func(*native.Event)
查看源码
OnMouseLeavefunc(*native.Event)—

Callback for mouse leave. The signature below lists the event payload.

func(*native.Event)
查看源码
OnMouseDownfunc(*native.Event)—

Callback for mouse down. The signature below lists the event payload.

func(*native.Event)
查看源码
OnMouseUpfunc(*native.Event)—

Callback for mouse up. The signature below lists the event payload.

func(*native.Event)
查看源码
OnKeyDownfunc(*native.Event)—

Callback for key down. The signature below lists the event payload.

func(*native.Event)
查看源码
OnKeyUpfunc(*native.Event)—

Callback for key up. The signature below lists the event payload.

func(*native.Event)
查看源码
OnFocusfunc(*native.Event)—

Callback for focus. The signature below lists the event payload.

func(*native.Event)
查看源码
OnBlurfunc(*native.Event)—

Callback for blur. The signature below lists the event payload.

func(*native.Event)
查看源码
Valuefunc() string—

The current controlled value. Update application state from the change callback to accept a new value.

func() string
查看源码
DefaultValuestring—

Initial value for uncontrolled state. Use Value when the application should own subsequent changes.

string
查看源码
Lengthany—

Number of one-time-code input slots, bounded to twelve.

any
查看源码
ValidationTypestring—

Validation strategy applied to the field.

string
查看源码
Mask*bool—

Whether the input conceals its entered value.

*bool
查看源码
ReadOnlybool—

Preserves the current value while keeping the control available for focus and inspection.

bool
查看源码
Requiredbool—

Marks the control as required for validation and accessibility.

bool
查看源码
AutoSubmitstring—

Submits the one-time code after every required cell has a value.

string
查看源码
OnValueChangefunc(string, *native.Event)—

Reports an accepted value change. Use the callback payload to update controlled state.

func(string, *native.Event)
查看源码
OnCompletefunc(string, *native.Event)—

Callback for complete. The signature below lists the event payload.

func(string, *native.Event)
查看源码

OtpField.Disabled

查看源码
otpField.Disabled(value any) *OtpFieldComponent

Prevents activation and exposes the disabled state to accessibility. Compound parts inherit a disabled root.

OtpField.Value

查看源码
otpField.Value(value any) *OtpFieldComponent

The current controlled value. Update application state from the change callback to accept a new value.

OtpField.DefaultValue

查看源码
otpField.DefaultValue(value string) *OtpFieldComponent

Initial value for uncontrolled state. Use Value when the application should own subsequent changes.

OtpField.Length

查看源码
otpField.Length(value any) *OtpFieldComponent

Number of one-time-code input slots, bounded to twelve.

OtpField.ValidationType

查看源码
otpField.ValidationType(value string) *OtpFieldComponent

Validation strategy applied to the field.

OtpField.Mask

查看源码
otpField.Mask(value bool) *OtpFieldComponent

Whether the input conceals its entered value.

OtpField.ReadOnly

查看源码
otpField.ReadOnly(value bool) *OtpFieldComponent

Preserves the current value while keeping the control available for focus and inspection.

OtpField.Required

查看源码
otpField.Required(value bool) *OtpFieldComponent

Marks the control as required for validation and accessibility.

OtpField.AutoSubmit

查看源码
otpField.AutoSubmit(value string) *OtpFieldComponent

Submits the one-time code after every required cell has a value.

OtpField.OnValueChange

查看源码
otpField.OnValueChange(value func(string, *native.Event)) *OtpFieldComponent

Reports an accepted value change. Use the callback payload to update controlled state.

OtpField.OnComplete

查看源码
otpField.OnComplete(value func(string, *native.Event)) *OtpFieldComponent

Callback for complete. The signature below lists the event payload.

OtpField.Root

查看源码
otpField.Root() *Element

Configures root for this part. The declared type and source define the accepted value.

OtpField.Input

查看源码
otpField.Input(value int, options ...OtpFieldInputProps) *Element

Configures input for this part. The declared type and source define the accepted value.

OtpField.InputWith

查看源码
otpField.InputWith(props OtpFieldInputProps) *Element

InputWith supplies explicit properties for this part.

Reffunc(*native.Node)—

Receives the retained native node after construction. Keep imperative work in event or lifecycle callbacks.

func(*native.Node)
查看源码
Styleany—

Reusable layout, typography, color, and interaction-state styles. Build with ui.Style() and compose with Merge.

any
查看源码
ChildrenPartChildren—

Content mounted inside the component. Compound child callbacks run after the parent context exists.

PartChildren
查看源码
Disabledany—

Prevents activation and exposes the disabled state to accessibility. Compound parts inherit a disabled root.

any
查看源码
Rolestring—

Accessibility role override. Prefer the component’s built-in semantics.

string
查看源码
FocusOnPointerany—

Whether a pointer press moves keyboard focus to the control.

any
查看源码
Groupany—

Names this element as a group for descendant interaction-state styling.

any
查看源码
AriaLabelany—

Accessible name, especially for icon-only controls or controls without a visible label.

any
查看源码
TabIndex*float64—

Controls sequential keyboard focus order. Omit to retain the component’s default focus behavior.

*float64
查看源码
OnClickfunc(*native.Event)—

Called after QuickGUI resolves an activation, including supported keyboard activation.

func(*native.Event)
查看源码
OnDoubleClickfunc(*native.Event)—

Callback for double click. The signature below lists the event payload.

func(*native.Event)
查看源码
OnContextMenufunc(*native.Event)—

Callback for context menu. The signature below lists the event payload.

func(*native.Event)
查看源码
OnPointerfunc(*native.Event)—

Callback for pointer. The signature below lists the event payload.

func(*native.Event)
查看源码
OnMouseEnterfunc(*native.Event)—

Callback for mouse enter. The signature below lists the event payload.

func(*native.Event)
查看源码
OnMouseLeavefunc(*native.Event)—

Callback for mouse leave. The signature below lists the event payload.

func(*native.Event)
查看源码
OnMouseDownfunc(*native.Event)—

Callback for mouse down. The signature below lists the event payload.

func(*native.Event)
查看源码
OnMouseUpfunc(*native.Event)—

Callback for mouse up. The signature below lists the event payload.

func(*native.Event)
查看源码
OnKeyDownfunc(*native.Event)—

Callback for key down. The signature below lists the event payload.

func(*native.Event)
查看源码
OnKeyUpfunc(*native.Event)—

Callback for key up. The signature below lists the event payload.

func(*native.Event)
查看源码
OnFocusfunc(*native.Event)—

Callback for focus. The signature below lists the event payload.

func(*native.Event)
查看源码
OnBlurfunc(*native.Event)—

Callback for blur. The signature below lists the event payload.

func(*native.Event)
查看源码
Typestring—

Input editing mode for this control.

string
查看源码
Valueany—

The current controlled value. Update application state from the change callback to accept a new value.

any
查看源码
Placeholderstring—

Hint displayed while the text value is empty.

string
查看源码
Multilinebool—

Allows multiple lines in the core text editor.

bool
查看源码
OnInputfunc(*native.Event)—

Receives edits from the text control. Write the new text into the controlled value.

func(*native.Event)
查看源码
OnChangefunc(*native.Event)—

Callback for change. The signature below lists the event payload.

func(*native.Event)
查看源码
OnSubmitfunc(*native.Event)—

Called when the control submits its current value.

func(*native.Event)
查看源码
Indexint—

Zero-based index associated with this repeated part.

int
查看源码

OtpField.Separator

查看源码
otpField.Separator(value int, options ...OtpFieldSeparatorProps) *Element

Configures separator for this part. The declared type and source define the accepted value.

OtpField.SeparatorWith

查看源码
otpField.SeparatorWith(props OtpFieldSeparatorProps) *Element

SeparatorWith supplies explicit properties for this part.

Reffunc(*native.Node)—

Receives the retained native node after construction. Keep imperative work in event or lifecycle callbacks.

func(*native.Node)
查看源码
Styleany—

Reusable layout, typography, color, and interaction-state styles. Build with ui.Style() and compose with Merge.

any
查看源码
ChildrenPartChildren—

Content mounted inside the component. Compound child callbacks run after the parent context exists.

PartChildren
查看源码
Disabledany—

Prevents activation and exposes the disabled state to accessibility. Compound parts inherit a disabled root.

any
查看源码
Rolestring—

Accessibility role override. Prefer the component’s built-in semantics.

string
查看源码
FocusOnPointerany—

Whether a pointer press moves keyboard focus to the control.

any
查看源码
Groupany—

Names this element as a group for descendant interaction-state styling.

any
查看源码
AriaLabelany—

Accessible name, especially for icon-only controls or controls without a visible label.

any
查看源码
TabIndex*float64—

Controls sequential keyboard focus order. Omit to retain the component’s default focus behavior.

*float64
查看源码
OnClickfunc(*native.Event)—

Called after QuickGUI resolves an activation, including supported keyboard activation.

func(*native.Event)
查看源码
OnDoubleClickfunc(*native.Event)—

Callback for double click. The signature below lists the event payload.

func(*native.Event)
查看源码
OnContextMenufunc(*native.Event)—

Callback for context menu. The signature below lists the event payload.

func(*native.Event)
查看源码
OnPointerfunc(*native.Event)—

Callback for pointer. The signature below lists the event payload.

func(*native.Event)
查看源码
OnMouseEnterfunc(*native.Event)—

Callback for mouse enter. The signature below lists the event payload.

func(*native.Event)
查看源码
OnMouseLeavefunc(*native.Event)—

Callback for mouse leave. The signature below lists the event payload.

func(*native.Event)
查看源码
OnMouseDownfunc(*native.Event)—

Callback for mouse down. The signature below lists the event payload.

func(*native.Event)
查看源码
OnMouseUpfunc(*native.Event)—

Callback for mouse up. The signature below lists the event payload.

func(*native.Event)
查看源码
OnKeyDownfunc(*native.Event)—

Callback for key down. The signature below lists the event payload.

func(*native.Event)
查看源码
OnKeyUpfunc(*native.Event)—

Callback for key up. The signature below lists the event payload.

func(*native.Event)
查看源码
OnFocusfunc(*native.Event)—

Callback for focus. The signature below lists the event payload.

func(*native.Event)
查看源码
OnBlurfunc(*native.Event)—

Callback for blur. The signature below lists the event payload.

func(*native.Event)
查看源码
Index*int—

Zero-based index associated with this repeated part.

*int
查看源码
part.Child(content).Style(style)

Every part returns a fluent element. Strings, numbers, elements, and deferred child factories compose directly.

ChildChild(child any) *Element—

Child appends content and returns this element. Content can be an element, native node, scalar, accessor, or node-returning construction callback.

Child(child any) *Element
查看源码
ChildrenChildren(children ...any) *Element—

Children appends multiple children in order without replacing existing content. It also accepts []any, []*Element, and []*native.Node slices as arguments. Read the retained child nodes through element.Node.Children.

Children(children ...any) *Element
查看源码
StyleStyle(style StyleBuilder) *Element—

Style merges a reusable style. Scalar accessors retain independent native bindings.

Style(style StyleBuilder) *Element
查看源码
OnClickOnClick(handler func()) *Element—

OnClick handles a click without an unused event parameter.

OnClick(handler func()) *Element
查看源码
RefRef(handler func(*native.Node)) *Element—

Ref exposes the native handle once at this point in the declaration chain.

Ref(handler func(*native.Node)) *Element
查看源码