OtpField
由可分别设置样式的输入格组成、长度受限的一次性验证码编辑器。
正在加载交互演示…
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)
}#导入
从 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.RoototpField.InputotpField.Separator
#API 参考
展开条目查看说明和完整签名。短横线表示声明中未记录默认值。
NewOtpField
查看源码ui.NewOtpField(props ...OtpFieldRootProps) *OtpFieldComponentNewOtpField 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—
FocusOnPointerany—
Groupany—
AriaLabelany—
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)—
OnContextMenufunc(*native.Event)—
OnPointerfunc(*native.Event)—
OnMouseEnterfunc(*native.Event)—
OnMouseLeavefunc(*native.Event)—
OnMouseDownfunc(*native.Event)—
OnMouseUpfunc(*native.Event)—
OnKeyDownfunc(*native.Event)—
OnKeyUpfunc(*native.Event)—
OnFocusfunc(*native.Event)—
OnBlurfunc(*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—
ValidationTypestring—
Mask*bool—
ReadOnlybool—
Requiredbool—
AutoSubmitstring—
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)—
OtpField.Disabled
查看源码otpField.Disabled(value any) *OtpFieldComponentPrevents activation and exposes the disabled state to accessibility. Compound parts inherit a disabled root.
OtpField.Value
查看源码otpField.Value(value any) *OtpFieldComponentThe current controlled value. Update application state from the change callback to accept a new value.
OtpField.DefaultValue
查看源码otpField.DefaultValue(value string) *OtpFieldComponentInitial value for uncontrolled state. Use Value when the application should own subsequent changes.
OtpField.Length
查看源码otpField.Length(value any) *OtpFieldComponentNumber of one-time-code input slots, bounded to twelve.
OtpField.ValidationType
查看源码otpField.ValidationType(value string) *OtpFieldComponentValidation strategy applied to the field.
OtpField.Mask
查看源码otpField.Mask(value bool) *OtpFieldComponentWhether the input conceals its entered value.
OtpField.ReadOnly
查看源码otpField.ReadOnly(value bool) *OtpFieldComponentPreserves the current value while keeping the control available for focus and inspection.
OtpField.Required
查看源码otpField.Required(value bool) *OtpFieldComponentMarks the control as required for validation and accessibility.
OtpField.AutoSubmit
查看源码otpField.AutoSubmit(value string) *OtpFieldComponentSubmits the one-time code after every required cell has a value.
OtpField.OnValueChange
查看源码otpField.OnValueChange(value func(string, *native.Event)) *OtpFieldComponentReports an accepted value change. Use the callback payload to update controlled state.
OtpField.OnComplete
查看源码otpField.OnComplete(value func(string, *native.Event)) *OtpFieldComponentCallback for complete. The signature below lists the event payload.
OtpField.Root
查看源码otpField.Root() *ElementConfigures root for this part. The declared type and source define the accepted value.
OtpField.Input
查看源码otpField.Input(value int, options ...OtpFieldInputProps) *ElementConfigures input for this part. The declared type and source define the accepted value.
OtpField.InputWith
查看源码otpField.InputWith(props OtpFieldInputProps) *ElementInputWith 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—
FocusOnPointerany—
Groupany—
AriaLabelany—
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)—
OnContextMenufunc(*native.Event)—
OnPointerfunc(*native.Event)—
OnMouseEnterfunc(*native.Event)—
OnMouseLeavefunc(*native.Event)—
OnMouseDownfunc(*native.Event)—
OnMouseUpfunc(*native.Event)—
OnKeyDownfunc(*native.Event)—
OnKeyUpfunc(*native.Event)—
OnFocusfunc(*native.Event)—
OnBlurfunc(*native.Event)—
Typestring—
Valueany—
The current controlled value. Update application state from the change callback to accept a new value.
any查看源码Placeholderstring—
Multilinebool—
OnInputfunc(*native.Event)—
Receives edits from the text control. Write the new text into the controlled value.
func(*native.Event)查看源码OnChangefunc(*native.Event)—
OnSubmitfunc(*native.Event)—
Indexint—
OtpField.Separator
查看源码otpField.Separator(value int, options ...OtpFieldSeparatorProps) *ElementConfigures separator for this part. The declared type and source define the accepted value.
OtpField.SeparatorWith
查看源码otpField.SeparatorWith(props OtpFieldSeparatorProps) *ElementSeparatorWith 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—
FocusOnPointerany—
Groupany—
AriaLabelany—
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)—
OnContextMenufunc(*native.Event)—
OnPointerfunc(*native.Event)—
OnMouseEnterfunc(*native.Event)—
OnMouseLeavefunc(*native.Event)—
OnMouseDownfunc(*native.Event)—
OnMouseUpfunc(*native.Event)—
OnKeyDownfunc(*native.Event)—
OnKeyUpfunc(*native.Event)—
OnFocusfunc(*native.Event)—
OnBlurfunc(*native.Event)—
Index*int—
Element
查看源码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—
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查看源码