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
670
Vueでネイティブアプリを作り倒す
takumiz19
1
1.7k
Other Decks in Programming
See All in Programming
いま中途半端なSwift 6対応をするより、Default ActorやApproachable Concurrencyを有効にしてからでいいんじゃない?
yimajo
2
360
CI_CD「健康診断」のススメ。現場でのボトルネック特定から、健康診断を通じた組織的な改善手法
teamlab
PRO
0
190
The Past, Present, and Future of Enterprise Java
ivargrimstad
0
190
詳しくない分野でのVibe Codingで困ったことと学び/vibe-coding-in-unfamiliar-area
shibayu36
3
4.6k
CSC509 Lecture 03
javiergs
PRO
0
330
AI Coding Meetup #3 - 導入セッション / ai-coding-meetup-3
izumin5210
0
630
monorepo の Go テストをはやくした〜い!~最小の依存解決への道のり~ / faster-testing-of-monorepos
convto
2
430
SpecKitでどこまでできる? コストはどれくらい?
leveragestech
0
600
チームの境界をブチ抜いていけ
tokai235
0
100
止められない医療アプリ、そっと Swift 6 へ
medley
1
130
実践AIチャットボットUI実装入門
syumai
7
2.5k
Django Ninja による API 開発効率化とリプレースの実践
kashewnuts
0
1.1k
Featured
See All Featured
ReactJS: Keep Simple. Everything can be a component!
pedronauck
667
120k
Design and Strategy: How to Deal with People Who Don’t "Get" Design
morganepeng
132
19k
Designing for Performance
lara
610
69k
How STYLIGHT went responsive
nonsquared
100
5.8k
Scaling GitHub
holman
463
140k
Making Projects Easy
brettharned
119
6.4k
The Cost Of JavaScript in 2023
addyosmani
53
9k
GraphQLの誤解/rethinking-graphql
sonatard
73
11k
[Rails World 2023 - Day 1 Closing Keynote] - The Magic of Rails
eileencodes
36
2.5k
Making the Leap to Tech Lead
cromwellryan
135
9.5k
Six Lessons from altMBA
skipperchong
28
4k
[RailsConf 2023] Rails as a piece of cake
palkan
57
5.9k
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