Skip to content

ScrubInputRoot

ScrubInputRoot ist das headless Wurzel-Primitiv für Ziehen-zum-Scrubben numerische Eingabe.

Es verwaltet:

  • Mischwertedarstellung
  • Bearbeitungs- vs. Scrubbingzustand
  • zeigerbetriebenes numerisches Scrubbing
  • Commit-Semantik für abgeschlossene Bearbeitungen

Props

PropDefaultType
modelValue*
Aktueller numerischer Wert oder Mischzustands-Sentinel.
number | symbol
min
Minimum erlaubter Wert.
-Infinitynumber | undefined
max
Maximum erlaubter Wert.
Infinitynumber | undefined
step
Scrub-Schritt-Multiplikator.
1number | undefined
sensitivity
Zeiger-Sensitivitäts-Multiplikator.
1number | undefined
placeholder
Platzhalter für Mischwerte.
Mixedstring | undefined

Modell

PropDefaultType
v-model:modelValue*
Schreibbares numerisches Modell.
number

Ereignisse

EventPayloadDescription
update:modelValuevalue: numberAusgelöst während des Scrubbings oder der Bearbeitung.
commitvalue: number, previous: numberAusgelöst, wenn eine Bearbeitungsinteraktion abgeschlossen wird.

Slots

SlotPropsDescription
default{ modelValue: number | symbol, displayValue: string, isMixed: boolean, editing: boolean, scrubbing: boolean, startScrub: (event: PointerEvent) => void, startEdit: () => void, commitEdit: (event: Event) => void, keydown: (event: KeyboardEvent) => void, placeholder: string }Vollständiger Scrub-Eingabe-Render-Vertrag.

Beispiel

vue
<ScrubInputRoot v-model:model-value="value" @commit="commit" v-slot="ctx">
  <div @pointerdown="ctx.startScrub">
    <ScrubInputDisplay />
    <ScrubInputField class="w-16" />
  </div>
</ScrubInputRoot>

Verwandte APIs

Released under the MIT License.