useUnmount
組件卸載的時候執行
useUnmount 在元件卸載時執行一個回呼函式。它是 useEffect 清理函式的語義化封裝,讓卸載時的清理意圖更加清晰。回呼始終使用最新的 props 和 state 呼叫。
使用場景
- 在元件卸載時清理訂閱、計時器或事件監聽器
- 傳送分析事件記錄元件的卸載
- 釋放外部資源(例如中止進行中的請求、關閉連線)
注意事項
- 最新值:回呼始終使用元件最新的 props 和 state 呼叫,不存在閉包過時問題。
- 僅卸載:回呼只在元件卸載時呼叫,不在依賴變更時呼叫。
- 相關 hooks:另請參閱
useMount用於元件掛載時的回呼,以及useEffect用於更通用的生命週期管理。
Usage
Live Editor
function Demo() { const [value] = useState("已掛載"); useUnmount(() => { alert("已卸載"); }); return <div>{value}</div>; };
Result
API
useUnmount
Returns
void
Arguments
| 參數名 | 描述 | 類型 | 預設值 |
|---|---|---|---|
| fn | 清理函数 | () => void (必填) | - |