Campo range

Campo range

Il campo range memorizza un valore numerico pensato per un input a cursore delimitato all'interno di una riga di repeater.

Ideale per

  • dimensioni del punteggio
  • cursori di confronto
  • impostazioni ponderate
  • valori di avanzamento visivo

Esempio di schema

{ "name": "score", "label": "Score", "type": "range" }

Uso nel template

{{#each ratings as="item"}}
  <div class="rating-bar">
    <span>{{ item.label }}</span>
    <strong>{{ item.score }}</strong>
  </div>
{{/each}}

Esempio di avanzamento:

{{#each metrics as="item"}}
  <div class="metric-row">
    <span>{{ item.label }}</span>
    <progress value="{{ item.score }}" max="100"></progress>
  </div>
{{/each}}

Usalo quando

Usa range quando le righe ripetute necessitano di un input numerico delimitato anziché di un numero a campo libero.

Non usarlo quando

Non usare range quando:

  • il numero non ha un comportamento naturale di minimo/massimo
  • il valore rappresenta denaro, quantità o un altro numero specifico del dominio

Usa invece number.

Note tecniche

  • usa range quando il numero ha senso solo all'interno di una scala delimitata
  • mantieni l'interpretazione della scala evidente nelle etichette o nell'interfaccia circostante
  • preferisci number quando il valore è una quantità di business piuttosto che una dimensione tipo punteggio
  • usalo all'interno di righe ripetute strutturate dove ogni elemento segue lo stesso contratto di valutazione

Correlati