所有元件

MotionHold

長按以確認危險操作;提早放開會倒轉回去。

WebReact Native手勢

動手試試

正在準備範例…

最簡用法

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

它替你處理的事

  • 按住指標、空白鍵或 Enter 時,填色會逐漸增加。
  • 提早放開會讓填色倒轉,倒轉途中再按一次會從目前的填色繼續。
  • 按住時按鈕會下沉,確認時彈起一次。

適用情境

  • 刪除專案。
  • 長按付款。
  • 重設設定。

Props

Prop型別預設值說明
childrenReactNode按鈕的標籤。
onConfirm() => void長按完成時執行一次。
durationnumber1200需要按住的毫秒數。
disabledbooleanfalse停用按鈕。
fillClassNamestring逐漸增加之填色的 class;fillStyle 設定其行內樣式。

其他 props 會傳給渲染的元素,所以 className、style 與事件處理函式照常可用。

Web 與 React Native

以 fillClassName 或 fillStyle 設定填色樣式;其他 props 會傳給 button。

在 React Native 上,無障礙的啟用動作會直接確認,因為使用輔助技術時很難長按。

用到它的範例

搜尋

輸入關鍵字搜尋文件。