Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Features
Speaker Deck
PRO
Sign in
Sign up for free
Search
Search
Vueのライフサイクルを完全に理解
Search
chan_kaku
January 19, 2019
Programming
0
2k
Vueのライフサイクルを完全に理解
Vueのライフサイクルについての説明です
対象としては、これからVueを始めようかなという方用
chan_kaku
January 19, 2019
Tweet
Share
More Decks by chan_kaku
See All by chan_kaku
JJGU CCC 2019 Springまとめ~Java歴1年なりの意見を添えて~
takumiz19
1
2.4k
ionic/vueもβ版になったのでちゃんと触ってみた
takumiz19
0
690
Vueでネイティブアプリを作り倒す
takumiz19
1
1.7k
Other Decks in Programming
See All in Programming
知られているようで知られていない JavaScriptの仕様 4選
syumai
0
630
チーム開発の “地ならし"
konifar
8
5.6k
JEP 496 と JEP 497 から学ぶ耐量子計算機暗号入門 / Learning Post-Quantum Crypto Basics from JEP 496 & 497
mackey0225
2
450
[堅牢.py #1] テストを書かない研究者に送る、最初にテストを書く実験コード入門 / Let's start your ML project by writing tests
shunk031
11
5.1k
JJUG CCC 2025 Fall: Virtual Thread Deep Dive
ternbusty
3
470
Feature Flags Suck! - KubeCon Atlanta 2025
phodgson
0
150
Bakuraku E2E Scenario Test System Architecture #bakuraku_qa_study
teyamagu
PRO
0
780
オフライン対応!Flutterアプリに全文検索エンジンを実装する @FlutterKaigi2025
itsmedreamwalker
2
230
しっかり学ぶ java.lang.*
nagise
1
410
最新のDirectX12で使えるレイトレ周りの機能追加について
projectasura
0
280
2026年向け会社紹介資料
misu
0
250
Herb to ReActionView: A New Foundation for the View Layer @ San Francisco Ruby Conference 2025
marcoroth
0
140
Featured
See All Featured
Stop Working from a Prison Cell
hatefulcrawdad
272
21k
[RailsConf 2023 Opening Keynote] The Magic of Rails
eileencodes
31
9.8k
Easily Structure & Communicate Ideas using Wireframe
afnizarnur
194
17k
GraphQLとの向き合い方2022年版
quramy
49
14k
I Don’t Have Time: Getting Over the Fear to Launch Your Podcast
jcasabona
34
2.5k
Practical Tips for Bootstrapping Information Extraction Pipelines
honnibal
25
1.6k
XXLCSS - How to scale CSS and keep your sanity
sugarenia
249
1.3M
Music & Morning Musume
bryan
46
7k
Agile that works and the tools we love
rasmusluckow
331
21k
Leading Effective Engineering Teams in the AI Era
addyosmani
8
1.1k
Visualization
eitanlees
150
16k
Speed Design
sergeychernyshev
33
1.2k
Transcript
ライフサイクルを 完全に理解する 2018/1/19 Vue.js/Nuxt.js meetup #2 chan_kakuz
自己紹介 フリュー株式会社 サーバーサイドエンジニア Vueとの出会いは入社してから ライブ、フェス、ベース、 技術的なところの勉強、お酒、最近はクラフトビール 仕事 趣味 Twitter @chan_kakuz
v-kansai 運営
この話は#1で話そうとした話
今回話すこと
話すこと Vueのライフサイクルについて - そもそもライフサイクルとは - 各ライフサイクルフックの紹介
今回話さないこと
話さないこと Vueの基本的な記法等々、、、、
Vueのライフサイクルとは?
引用:https://jp.vuejs.org/v2/guide/instance.html#ライフサイクルダイアグラム
これ
とはいえ雑すぎるのでちゃんと説明
ライフサイクル インスタンスが生成されてから削除されるまでの流れ Vueではこの流れの中でいくつかのタイミングで フックと呼ばれる関数を実行することができる
順をおって説明
インスタンス作成時
ここ
beforeCreate これはインスタンスの生成前に実行できます このタイミングでは、インスタンスは初期化前ですので、 dataは呼ばれていません
beforeCreate
created これはインスタンスが作成された後で実行されます 個人的にはcreatedは一番使っている印象です!! ※注意として、elementプロパティはまだここでは呼ばれて いません
created
マウント時
ここ
beforeMount インスタンスが作成された後、 elementへのマウントされる前で実行されます
mounted elementへのマウントがされた後に実行されます mountedは、elementへのマウントが行われた後処理されます。 したがって、elでelementを指定している場合、createdではタイミングとして早い と言うことになります。 子コンポーネントを全て再描画することを保証はしていないので、 $nextTickを使うことを推奨されています
データ更新時
ここ
beforeUpdate データの更新があった時に、rerenderされる前に実行され ます。 更新前の既存のDOMに対してアクセスすることができま す。
updated データの更新があった時に、rerenderされた後に実行されます このフックでは、状態変化を行うような処理は推奨されていません。 それが原因で無限ループに入ってしまう可能性がある。 updatedもmountedも子コンポーネントを全て再描画することを保証はしていな いので、 mounted同様$nextTickを使うことを推奨されています。
beforeUpdate, updated
インスタンスの削除時
ここ
beforeDestroy $destroy()が呼ばれた後、インスタンスが削除される前に実 行されます
destroyed $destroy()が呼ばれた後、インスタンスが削除された後に実 行されます
エラー時
errorCaptured このフックは、任意の子孫コンポーネントからのエラーが捕捉された時に、呼び 出されます。 フックは、エラー、エラーをトリガーするコンポーネントのインスタンス、エラーが 捕捉されたかどうかのメッセージを受け取ることができます。 また、エラー伝播を防ぐ為に、falseにすることで任意の箇所以降に広まらない ようにすることも可能です ※このフックはversion2.5.0以降で使用することができます
これで完全理解ですね
素敵なVueライフを!
最後に宣伝
None
fin