Vueコンポーネント間のデータ共有の詳細な説明

Vueコンポーネント間のデータ共有の詳細な説明

1. プロジェクト開発において、コンポーネント間の最も一般的な関係は次の 2 つのタイプに分けられます。

1. 父と息子の関係

2. 兄弟関係

1.1 親コンポーネントと子コンポーネント間のデータ共有

親コンポーネントと子コンポーネント間のデータ共有は、次のように分けられます。

1. 親→子の共有データ

サブコンポーネント:

ここに画像の説明を挿入

親コンポーネント:

ここに画像の説明を挿入

2. 子→親の共有データ

子コンポーネントはカスタム イベントを使用して親コンポーネントとデータを共有します。サンプルコードは次のとおりです

サブコンポーネント:

ここに画像の説明を挿入

親コンポーネント:

ここに画像の説明を挿入

ページに結果が表示されます:

ここに画像の説明を挿入

1.2 兄弟コンポーネント間のデータ共有

vue2.xでは、兄弟コンポーネント間でデータを共有するためのソリューションはEventBusです。

EventBus の使用法:

  • eventBus.jsモジュールを作成し、Vueインスタンスオブジェクトを共有する
  • データ送信側で、bus.$emit('イベント名', 送信するデータ)メソッドを呼び出してカスタムイベントをトリガーします。
  • データ受信側では、bus.$on('イベント名', イベント処理関数)メソッドを呼び出してカスタムイベントを登録します。

例:

1. eventBus.jsモジュールを作成し、Vueインスタンスオブジェクトを共有する

ここに画像の説明を挿入

2. データ送信側で、bus.$emit('イベント名', 送信データ)メソッドを呼び出してカスタムイベントをトリガーします。

ここに画像の説明を挿入

3. データ受信側で、bus.$on('イベント名', イベント処理関数)メソッドを呼び出してカスタムイベントを登録します。

ここに画像の説明を挿入

要約する

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

以下もご興味があるかもしれません:
  • Vueのライフサイクルについて学びましょう
  • Vue3ライフサイクルフック機能の詳しい説明
  • Vueのライフサイクルについての簡単な説明
  • Vue ローカルコンポーネントデータ共有 Vue.observable() の使用
  • Vueは2つのコンポーネント間のデータ共有と変更操作を実装します
  • Vueのライフサイクルとデータ共有の詳細な説明

<<:  ウェブデザインのグラフィック構成と組版機能の紹介

>>:  Windows Server 2016 に Docker をインストールするプロセスと発生した問題

推薦する

ReactとReduxの配列処理の説明

この記事では、reduce()、filter()、map()、every()、some()、spre...

JavaScript で Baidu Maps API にアクセスする方法と手順

目次1. Baidu Map API アクセス2. HTML で Baidu Map API を使用...

Vue ログインページ用の動的パーティクル背景プラグインの実装

目次動的パーティクル効果は次のとおりです。プラグインをインストールする動的パーティクル効果は次のとお...

Linux ファイルディレクトリ管理コマンドの概要

タッチコマンドこれには 2 つの機能があります。1 つは、既存のファイルの時間タグを現在のシステム時...

MySQL マルチテーブルクエリの具体例

1. SELECT句を使用して複数のテーブルをクエリするSELECT フィールド名 FROM tab...

ウェブページを開いて数秒後に他のページにリダイレクトする

これを実現するには、次のコードを追加するだけです。方法1: メタを使用する使用方法: <Met...

クールな花火効果を実現するjs

この記事では、jsを使用してクールな花火効果を実現するための具体的なコードを参考までに共有します。具...

Tomcat の構成と最適化ソリューションの詳細な説明

サービス.xml Server.xml 構成ファイルは、コンテナー全体を構成するために使用されます。...

MYSQL での Truncate の使用法の詳細な説明

この記事のガイド: テーブル内のデータを削除するには、削除と切り捨ての 2 つの方法があります。TR...

Linux で MongoDB のリモート自動バックアップを実装する方法

序文古いプロジェクトを引き継ぐ苦労 - MongoDB クラスターの学習と構築に関する前回の記事を読...

Vue3.0はvue-grid-layoutプラグインを使用してドラッグレイアウトを実装します。

目次1. プラグイン2. 幕間3. 実装4. 検証機能1. プラグインまず、私たちが選んだプラグイン...

モバイルブラウザが位置をサポートしない場合の解決策: 修正

具体的な方法は以下の通りです。 CSSコードコードをコピーコードは次のとおりです。 .wap_bot...

MySQLはconnect_by_isleaf MySQLメソッドまたはストアドプロシージャに似た機能を実装します

最近、特に異常なビジネス需要があり、テーブルがあります テーブル「デモ」を作成します( `id` i...

シンプルな虫眼鏡効果を実現するJavaScript

大きな箱の中に写真があります。マウスをその上に置くと、半透明のマスク レイヤーが表示されます。マウス...

MySQLオンラインDDLの使用に関する詳細な説明

目次文章LOCKパラメータアルゴリズムパラメータCOPY TABLE プロセスIN-PLACEプロセ...