FormBinding
class FormBinding[Owner, Schema, Domain, Msg]Rendering and event wiring for one form instance. Feedback updates are applied in the handler, against the current model, rather than against the form sampled during rendering.
Defined by scalive.FormBinding. View source (scalive/api/src/scalive/forms/FormBinding.scala:6-173)
Methods5
field
def field[Group, Input, Value](field: BoundFormField[Owner, Schema, Group, Input, Value]): FormControl[Owner, Input, Value, Msg]Binds an existing schema- and key-owned repeated field. Render only while its row exists; use optionalField for a control outside keyed row rendering.
Defined by scalive.FormBinding.field. View source (scalive/api/src/scalive/forms/FormBinding.scala:86-95)
def field[Group, Row, Input, Value](rows: RepeatedRows[Owner, Group, Row], key: FormRowKey[Group], field: FormField[Group, Input, Value]): FormControl[Owner, Input, Value, Msg]Binds a stable row key inside a signal's keyed rendering callback. The row must exist whenever this control is evaluated; use optionalField outside keyed rendering.
Defined by scalive.FormBinding.field. View source (scalive/api/src/scalive/forms/FormBinding.scala:100-119)
def field[Input, Value](field: FormField[Owner, Input, Value]): FormControl[Owner, Input, Value, Msg]Binds a declared field without imposing a particular control renderer.
Defined by scalive.FormBinding.field. View source (scalive/api/src/scalive/forms/FormBinding.scala:72-81)
modifiers
def modifiers: Vector[Mod[Msg]]Form attributes and the internal blur trigger. Include exactly once on the owning form. Under AfterBlur these include a nameless hidden child, not just attributes.
Defined by scalive.FormBinding.modifiers. View source (scalive/api/src/scalive/forms/FormBinding.scala:40-51)
optionalField
def optionalField[Group, Input, Value](field: BoundFormField[Owner, Schema, Group, Input, Value])(render: FormControl[Owner, Input, Value, Msg] => HtmlElement[Msg]): Mod[Msg]Renders a captured repeated field only while its row exists. This installs an optional signal scope so a later row removal never evaluates a stale control.
Defined by scalive.FormBinding.optionalField. View source (scalive/api/src/scalive/forms/FormBinding.scala:124-140)
def optionalField[Group, Row, Input, Value](rows: RepeatedRows[Owner, Group, Row], key: FormRowKey[Group], field: FormField[Group, Input, Value])(render: FormControl[Owner, Input, Value, Msg] => HtmlElement[Msg]): Mod[Msg]Renders one keyed field outside a keyed row loop, omitting it when the row is absent.
Defined by scalive.FormBinding.optionalField. View source (scalive/api/src/scalive/forms/FormBinding.scala:143-168)
render
def render(mods: Mod.Input[Msg]*): HtmlElement[Msg]Renders a form with its bindings and internal trigger. Do not override the generated id or change, recovery, and submit bindings. Use modifiers for an existing form renderer.
Defined by scalive.FormBinding.render. View source (scalive/api/src/scalive/forms/FormBinding.scala:56-69)
rows
def rows[Group, Row](rows: RepeatedRows[Owner, Group, Row]): Signal[Vector[FormRowView[Owner, Schema, Group, Row]]]Row views for keyed rendering, including the existing row presence helpers.
Defined by scalive.FormBinding.rows. View source (scalive/api/src/scalive/forms/FormBinding.scala:171-172)
Values2
feedback
val feedback: FormFeedbackDefined by scalive.FormBinding.feedback. View source (scalive/api/src/scalive/forms/FormBinding.scala:9-9)
ref
val ref: DomRefDefined by scalive.FormBinding.ref. View source (scalive/api/src/scalive/forms/FormBinding.scala:8-8)