序文Vue の親子コンポーネントは、props を通じて親コンポーネントの値を子コンポーネントに簡単に渡すことができます。コンポーネントが多くのレイヤーにネストされている場合、各レイヤーは同じ props を使用して値を渡す必要があり、これは面倒でメンテナンスが困難です。 例[例] コンポーネント A はコンポーネント B を使用し、コンポーネント B はコンポーネント C を使用します。コンポーネント C は、コンポーネント A のデータ テキストとコンポーネント A のメソッド getmethod を使用する必要があります。コンポーネント A のコードは次のとおりです。 <テンプレート> <div> <P>これはコンポーネント A です</P> <v-コーム></v-コーム> </div> </テンプレート> <スクリプト> '@/view/comB.vue' から comB をインポートします。 エクスポートデフォルト{ 名前: 'comA', コンポーネント: 'v-comb': comB }, データ() { 戻る { メッセージ: '私はコンポーネント A のデータです' } }, provide: function() { //子コンポーネントにプロパティとメソッドを挿入する return { テキスト: this.msg、 getメソッド: 関数() { console.log('ルートコンポーネントでgetMethodメソッドを実行します') } } } } </スクリプト> キーワードprovideを使用して、子コンポーネントにデータとメソッドを公開します。 <テンプレート> <div> <div> <P>これはコンポーネント B です</P> <v-comc></v-comc> </div> </div> </テンプレート> <スクリプト> '@/view/comC.vue' から comC をインポートします。 エクスポートデフォルト{ 名前: 'comB', コンポーネント: 'v-comc': comC } } </スクリプト> コンポーネント C はコンポーネント A の孫です。コンポーネント C はコンポーネント A のデータとメソッドを使用する必要があります。コードは次のとおりです。 <テンプレート> <div style="border:1px solid orange;color:orange;"> <div> <P>これは C コンポーネントです</P> <div>{{テキスト}}</div> <button @click="getMethod">親コンポーネントメソッドを呼び出す</button> </div> </div> </テンプレート> <スクリプト> エクスポートデフォルト{ 名前: 'comC', inject: ['text', 'getMethod'] //text と getMethod はプロバイダーによって提供される名前です} </スクリプト> ここで、inject キーワードは、コンポーネント A によって公開される情報を受け取るために使用されます。inject: [] で受け取る名前は、provide によって提供される名前とまったく同じである必要があることに特に注意してください。 実行すると、インターフェースは以下のようになります。 まとめ複数レベルのネストされたコンポーネント通信の場合、Vue は provide および inject キーワードを使用して親コンポーネントから子コンポーネントに値を直接転送するため、非常に便利です。問題のあるサブコンポーネントと親コンポーネントの間には強い結合関係があるため、絶対に必要な場合を除き、使用することはお勧めしません。 上記は、Vue フロントエンド開発における階層的にネストされたコンポーネントの通信の詳細な説明の詳細な内容です。Vue における階層的にネストされたコンポーネントの通信の詳細については、123WORDPRESS.COM の他の関連記事に注目してください。 以下もご興味があるかもしれません:
|
<<: Docker 構成 Alibaba Cloud イメージアクセラレーション プル実装
この質問は非常に奇妙なので、あまり多くを語らずにコードに直接進みます。 .g-ダイアログラッパー{ ...
1. シャドウソックスをインストールするsudo apt-get install python-pi...
この記事では、アンカー配置を実装するためのVueの具体的なコードを例として紹介します。具体的な内容は...
目次インデックス プッシュダウンとは何ですか?インデックスプッシュダウン最適化の原理インデックスプッ...
目次序文Linux アプリケーション実行中に開いているファイルが多すぎる問題の分析と解決Linux ...
Linux での動的ライブラリ ファイルのファイル名は libxxx.so のようになります。ここで...
フィルターを使用して画像に透明な CSS を書く方法コードをコピーコードは次のとおりです。 html...
MySQL では、LOAD_FILE() 関数はファイルを読み取り、その内容を文字列として返します。...
簡単に言うと、ウェアハウスとして使用される仮想マシンの IP は 192.168.149.129 で...
mkdir コマンドを使用して新しいディレクトリを作成できることは誰もが知っていますが、多くの場合、...
1. エフェクトHTMLを送信する <div id="送信ボタン">...
サブクエリの代わりにJOINを使用するMySQL はバージョン 4.1 以降で SQL サブクエリを...
目次リアクティブ機能使用法: toRef 関数 (理解するだけ)使用法: ref関数レスポンシブデー...
docker によってプルされたコマンドは、デフォルトでは /var/lib/docker/ フォル...
コンピュータ サイエンスで最も一般的に使用され、議論されているデータ構造の 1 つは、二分探索木です...