Skip to content
scalive
Menu
ConnectingLiveReconnectingOffline
GitHub
c

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: FormFeedback

Defined by scalive.FormBinding.feedback. View source (scalive/api/src/scalive/forms/FormBinding.scala:9-9)

ref

val ref: DomRef

Defined by scalive.FormBinding.ref. View source (scalive/api/src/scalive/forms/FormBinding.scala:8-8)