すべてのコンポーネント

MotionHold

危険な操作は長押しで確定。途中で離すと巻き戻ります。

WebReact Nativeジェスチャー

試してみる

サンプルを準備中…

いちばん短い使い方

Danger.jsx
<MotionHold duration={1200} onConfirm={deleteProject}>
  Hold to delete
</MotionHold>;

代わりに処理してくれること

  • ポインター、Space、Enter を押し続けている間、塗りが広がります。
  • 途中で離すと塗りが巻き戻り、巻き戻り中にもう一度押すと現在の塗りから続きます。
  • 押している間ボタンは沈み、確定すると一度だけ弾みます。

こんなときに

  • プロジェクトを削除する。
  • 長押しで支払う。
  • 設定をリセットする。

props

Prop型デフォルト説明
childrenReactNodeボタンのラベル。
onConfirm() => void長押しが完了したときに実行されます。
durationnumber1200押し続ける必要がある時間(ミリ秒)。
disabledbooleanfalseボタンを無効にします。
fillClassNamestring広がっていく塗りのクラス。インラインスタイルは fillStyle で指定します。

ほかの props は描画される要素に渡るので、className、style、イベントハンドラーはいつもどおり使えます。

Web と React Native

塗りのスタイルは fillClassName か fillStyle で指定します。ほかの props は button に渡ります。

React Native では、支援技術では長押しが難しいため、アクセシビリティの activate アクションで直接確定します。

使っているサンプル

検索

入力するとドキュメントを検索します。