---
title: "useUnmount 用法與示例"
description: "組件卸載的時候執行。"
canonical: https://reactuse.com/zh-Hant/effect/useunmount/
---

# useUnmount

組件卸載的時候執行

`useUnmount` 在元件卸載時執行一個回呼函式。它是 `useEffect` 清理函式的語義化封裝，讓卸載時的清理意圖更加清晰。回呼始終使用最新的 props 和 state 呼叫。

### 使用場景

- 在元件卸載時清理訂閱、計時器或事件監聽器
- 傳送分析事件記錄元件的卸載
- 釋放外部資源（例如中止進行中的請求、關閉連線）

### 注意事項

- **最新值**：回呼始終使用元件最新的 props 和 state 呼叫，不存在閉包過時問題。
- **僅卸載**：回呼只在元件卸載時呼叫，不在依賴變更時呼叫。
- **相關 hooks**：另請參閱 `useMount` 用於元件掛載時的回呼，以及 `useEffect` 用於更通用的生命週期管理。

## Usage

```tsx live

function Demo() {
  const [value] = useState("已掛載");
  useUnmount(() => {
    alert("已卸載");
  });
  return <div>{value}</div>;
};

```

%%API%%