ノブ

ノブは、ダイヤル付きの数値入力を定義するためのフォームコンポーネントです。


import { Knob } from 'primereact/knob';
         

ノブは、_value_ プロパティと _onChange_ プロパティを使用して制御される入力として使用されます。

0

<Knob value={value} onChange={(e) => setValue(e.value)} />
         

境界は、デフォルトがそれぞれ0と100である _min_ プロパティと _max_ プロパティで設定されます。

10

<Knob value={value} onChange={(e) => setValue(e.value)} min={-50} max={50} />
         

各移動のサイズは、_step_ プロパティで定義されます。

10

<Knob value={value} step={10} onChange={(e) => setValue(e.value)} />
         

ラベルは、プレースホルダーとして _60_ を持つ _valueTemplate_ プロパティでカスタマイズできる文字列テンプレートです。

60%

<Knob value={value} onChange={(e) => setValue(e.value)} valueTemplate={'{value}%'} />
         

境界線のサイズは、_stroke_ プロパティでピクセル単位の数値として指定されます。

40

<Knob value={value} onChange={(e) => setValue(e.value)} strokeWidth={5} />
         

ノブの直径は、_size_ プロパティを使用してピクセル単位で定義されます。

60

<Knob value={value} onChange={(e) => setValue(e.value)} size={200} />
         

色は、_textColor_、_rangeColor_、および _valueColor_ プロパティでカスタマイズされます。

75

<Knob value={value} onChange={(e) => setValue(e.value)} valueColor="#708090" rangeColor="#48d1cc" />
         

ノブは、カスタムコントロールでも制御できます。

0

<Knob value={value} size={150} />
<Button icon="pi pi-plus" onClick={() => setValue(value + 1)} disabled={value === 100} />
<Button icon="pi pi-minus" onClick={() => setValue(value - 1)} disabled={value === 0} />
         

_readOnly_ が存在する場合、値は編集できません。

50

<Knob value={50} readOnly />
         

_disabled_ が存在する場合、ノブを操作できないことを示す視覚的なヒントが適用されます。

50

<Knob value={50} disabled />
         

スクリーンリーダー

ノブ要素コンポーネントは、_aria-valuemin_、_aria-valuemax_、および _aria-valuenow_ 属性に加えて、_slider_ ロールを使用します。コンポーネントを記述する値は、_aria-labelledby_ プロパティと _aria-label_ プロパティを使用して定義できます。


<label htmlFor="firstname">Firstname</label>
<InputText id="firstname" />

<span id="lastname">Lastname</span>
<InputText aria-labelledby="lastname" />

<InputText aria-label="Age"/>
     

キーボードサポート

キー機能
tabフォーカスをスライダーに移動します。
左矢印下矢印値を減らします。
右矢印上矢印値を増やします。
home最小値を設定します。
end最大値を設定します。
page up値を10ステップ増やします。
page down値を10ステップ減らします。