Vueライフサイクルカメラの8つのフック関数

Vueライフサイクルカメラの8つのフック関数

1. beforeCreateとcreated関数

BeforeCreate と created は、初期化 (データ監視とデータ プロキシ) によって分割されます。

beforeCreate() を実行する前に、ライフサイクルと時間が初期化されますが、データ プロキシはまだ開始されていません。

(1)beforeCreate():データ監視とデータプロキシを初期化する前に、beforeCreate関数の内容が実行されます。現時点では、data 内のデータと methods 内のメソッドには Vm 経由でアクセスできません。

(2)created():データ監視とデータプロキシを初期化した後、beforeCreate関数の内容を実行します。この時点で、データ内のデータとメソッドに設定されたメソッドにvmを介してアクセスできます。

データがマウントされる前に、Vue がテンプレートを解析する (仮想 DOM を生成する) という別のステップがあります。解析されたコンテンツをページにまだ表示することはできません。

2. beforeMountとmount関数

(3)beforeMount(): Vueが仮想DOMの生成を完了した後、仮想DOMを実際のDOMに変換する前に実行されます。この時点で、ページには Vue によってコンパイルされていない DOM 構造が表示され、DOM に対するすべての操作は最終的に失敗します。

(4)mounted():仮想DOMが実DOMに変換された後に実行されます。この時点で、ページには Vue によってコンパイルされた DOM が表示され、DOM に対するすべての操作が有効になります (可能な限り回避してください)。初期化プロセスはここで終了します。通常、タイマーの開始、ネットワーク要求の送信、メッセージのサブスクライブ、カスタム イベントのバインドなどの初期化操作がここで実行されます。

3. beforeUpdate と updated 関数

(5)beforeUpdate():データが変更されると、新しい仮想DOMが生成され、古い仮想DOMと比較され、ページ更新(Model-》View)プロセスが最終的に完了する前に実行されます。この時点では、データは新しいですが、ページは古い、つまり、ページはまだデータと同期されていません。

(6)updated():データが変更されると新しい仮想DOMが生成され、古い仮想DOMと比較され、ページ更新(Model-》View)処理が完了した後に実行されます。この時点では、データは新しく、ページも新しく、つまりページとデータは同期されている。

4. beforeDestroy と destroy 関数

(7)beforeDestroy():データ監視、子要素、イベントリスニングを削除する前に実行されます。この時点で、VM 内のすべてのデータ、メソッド、命令などが使用可能な状態になり、破棄プロセスが実行されようとしています。通常、この段階では、タイマーのクローズ、メッセージの登録解除、カスタム イベントのバインド解除、その他の終了操作が実行されます。この時点ではすべてにアクセスできますが、操作を実行してもページ上のコンテンツは変更されません。

(8)destroyed():データ監視、子要素、イベントリスニングが削除された後に実行されます。ページ上のデータ、メソッド、命令などをアンバインドします。

要約する

この記事はこれで終わりです。皆さんのお役に立てれば幸いです。また、123WORDPRESS.COM のその他のコンテンツにも注目していただければ幸いです。

以下もご興味があるかもしれません:
  • Vue ライフサイクルにおけるコンポーネント化をご存知ですか?
  • Vue のライフサイクルとフック関数
  • Vue ライフサイクルの紹介とフック関数の詳細な説明
  • Vueコンポーネントライフサイクルフックの詳細な使用例

<<:  ページに間隔を空けてグリッドレイアウトを完璧に実装する方法

>>:  canvas.toDataURL image/png エラー処理方法の推奨

推薦する

Macシステムをインストールした後にVMWareがフルスクリーンで表示できない問題を解決する

システム: VMTOOLs ダウンロード:リンク: https://pan.baidu.com/s/...

Eclipse は Tomcat を構成しますが、Tomcat には無効なポート解決策があります

目次1. EclipseがTomcatを構成する2. Tomcat の無効なポートの解決方法方法1:...

Linux ディスク パーティションの実装の原理と方法の分析

覚えて: IDE ディスク: 最初のディスクは hda、2 番目のディスクは hdb...最初のディ...

Vue はデータの変更をどのように追跡しますか?

目次背景例誤解 - コールスタックを表示するためにウォッチでブレークポイントを設定する正しいアプロー...

ES6実装クラスのプライベート変数の書き方をいくつか詳しく説明します

プライベート変数のクロージャ実装プライベート変数は共有されないnew キーワードにより、 perso...

Dockerコンテナのタイムゾーン調整操作

Docker コンテナのタイムゾーンがホストマシンと一致しているかどうかを確認するにはどうすればよい...

MySQL5.7.03 上位バージョンから MySQL 5.7.17 への置き換えインストール プロセスと見つかった問題の解決策

1. インストール方法は? 1. [実行] -> [cmd] と入力して、小さな黒いウィンドウ...

カスタムスクロールバー効果を実現するJavaScript

実際のプロジェクトでは、上下のスクロール バーと左右のスクロール バーは DIV 内にないため、右の...

Amap を使用した React 実装例 (react-amap)

React の PC 版は Amap を使用するようにリファクタリングされました。情報を検索したと...

Linuxでのソフトウェア(ライブラリ)の更新コマンドの詳しい説明

Ubuntu サーバーにパッケージをインストールする場合、sudo apt-get install ...

Centos7 での DNS サーバーの構築の概要

目次1. プロジェクト環境: 2: DNSサーバーの設定i: 前方解析を構成する: ii: 逆解像度...

ウェブページ上でデスクトップ exe プログラムを呼び出す簡単な方法

この記事では主に、Web ページ上でデスクトップ exe プログラムを呼び出す方法を紹介します。 W...

Centos6でgitlabを構築する方法

序文元のプロジェクトは、パブリックネットワークgitlabに配置されていました。セキュリティ上の理由...

MySQL のスローログオンラインの問題と最適化ソリューション

MySQL スロー ログは、MySQL DBA やその他の開発および運用担当者が細心の注意を払う必要...

ReactはExcelファイルのインポートとエクスポートを実装します

目次プレゼンテーション層ビジネスレイヤーコアプラグイン xlsx ExcelインポートExcelエク...