onUpdated() 更新後フック

最終更新:2026-10-22

onUpdated() 更新後フック

onUpdated() は、リアクティブな変更によってコンポーネントが再レンダリングされ DOM が更新された後に呼ばれます。更新後の DOM サイズの取得やサードパーティライブラリとの同期に向いています。

グループライフサイクルフック
種類API
スコープコンポーネント内
Vue バージョン3.0+
SSR 対応対応

📝 構文

onUpdated(() => {
  // DOM は最新の状態になっている
})

⚙️ 引数

callback更新後に実行される関数

戻り値:なし

▶ 例

以下のコードを編集して結果を確認しましょう:

出力:

The height figure follows the font-size changes.

💡 ポイント

⚠️ 注意 このフック内で状態を変更してはいけません。再び更新がトリガーされ、無限ループになります。
💡 ヒント 特定のデータの変化を追いたい場合は watch / watchPostEffect を優先してください。このフックは「どの更新後にもやりたい処理」(レイアウトの再計算など)に限定するとよいです。
ℹ️ 補足 親コンポーネントの onUpdated は、その子コンポーネントの更新より後に発火します。
関連ケースは近日公開予定。

📚 関連チュートリアル

❓ よくある質問

Q ここでデータを変更すると無限ループになるのはなぜですか?
A 変更が新たな更新を引き起こし、フックが再実行されてまた変更される、という流れが繰り返されるためです。
Q nextTick との関係は?
A onUpdated の実行タイミングは「DOM 更新完了後」であり、await nextTick() の後と同じタイミングです。
Q どんなときに必要になりますか?
A あらゆるデータ変化の後に DOM の計測やライブラリとの同期が必要で、依存を個別に列挙できない場合です。
Web-Tutorial.com

Web-Tutorial 技術チーム

複数の開発者によって共同維持されているプログラミングチュートリアルプラットフォーム。各チュートリアルは専門分野の開発者が執筆・レビューしています。正確で信頼性の高いコンテンツを目指しています — 問題を見つけた場合はお知らせください。

100%