Vue.js での $emit の使用に関する詳細な説明

Vue.js での $emit の使用に関する詳細な説明

1. 親コンポーネントは props を使用して子コンポーネントにデータを渡すことができます。

2. 子コンポーネントは $emit を使用して親コンポーネントのカスタム イベントをトリガーできます。

vm.$emit( ​​event, arg ) //現在のインスタンスでイベントをトリガーする

vm.$on( event, fn ); //イベントをリッスンした後にfnを実行します。

例: サブコンポーネント:

<テンプレート>
  <div class="train-city">
    <h3>ToCity が親コンポーネントから子コンポーネントに渡されました:{{sendData}}</h3> 
    <br/><button @click='select(`Dalian`)'>ここをクリックすると、親コンポーネントに 'Dalian' が送信されます</button>
  </div>
</テンプレート>
<スクリプト>
  エクスポートデフォルト{
    名前:'trainCity',
    props:['sendData'], // 親コンポーネントから子コンポーネントに渡されるデータを受信するために使用されます。メソッド:{
      選択(val) {
        データ = {
          都市名: val
        };
        this.$emit('showCityName',data);//select イベントがトリガーされた後、showCityName イベントが自動的にトリガーされます}
    }
  }
</スクリプト>

親コンポーネント:

<テンプレート>
    <div>
        <div>親コンポーネントの toCity{{toCity}}</div>
        <train-city @showCityName="updateCity" :sendData="toCity"></train-city>
    </div>
<テンプレート>
<スクリプト>
  「./train-city」からTrainCityをインポートします。
  エクスポートデフォルト{
    名前:'インデックス',
    コンポーネント: {TrainCity},
    データ () {
      戻る {
        都市:"北京"
      }
    },
    方法:{
      updateCity(data){//子コンポーネントの都市選択をトリガー - 都市イベントを選択 this.toCity = data.cityname;//親コンポーネントの値を変更する console.log('toCity:'+this.toCity)
      }
    }
  }
</スクリプト>

図1: 前のデータをクリック

図2: クリック後のデータ

これで、Vue.js での $emit の使用に関する詳細なケース スタディに関するこの記事は終了です。Vue.js での $emit の使用に関するより関連性の高いコンテンツについては、123WORDPRESS.COM の以前の記事を検索するか、次の関連記事を引き続き参照してください。今後とも 123WORDPRESS.COM をよろしくお願いいたします。

以下もご興味があるかもしれません:
  • Vue.js+boostrapプロジェクト実践(事例詳細説明)
  • Vue.jsでタブ切り替えと色変更操作を実装する解説
  • Vue.js スロットにおけるスコープ付きスロットの使用法の詳細な説明
  • Vue.jsはカレンダー機能を実装します
  • Vue.jsはタイムライン機能を実装します
  • Vue.jsは背景テーブルコンポーネントのカプセル化を管理します
  • Vue.js フロントエンドプロジェクト向け多言語ソリューションのアイデアと実践
  • 大規模な Vue.js プロジェクトの構築と維持のための 10 のベスト プラクティス

<<:  qt.qpa.plugin の問題を解決: Ubuntu 18.04 の Qt で Qt プラットフォーム プラグイン「xcb」をロードできませんでした

>>:  MySQL無料インストール版を解凍した後にパスワードが見つからない問題を解決する方法

推薦する

VMware Workstation 12 Pro Linux インストール チュートリアル

この記事は、VMware Workstation 12 ProのインストールLinuxチュートリアル...

MySQL 学習: 初心者のための 3 つのパラダイム

目次1. パラダイム基盤1.1 パラダイムの概念2. 3つの主要なパラダイム2.1 3つの主要なパラ...

Mysql InnoDBとMyISAMの違いの分析

MySQL は、myisam、innodb、memory、archive、example など、多く...

アプレットにおけるwx.getUserProfileインターフェースの具体的な使用

最近、WeChatミニプログラムは、監査ミニプログラムのwx.loginおよびwx.getUserI...

Vueはel-tree遅延読み込みを使用して、追加、削除、変更、クエリ機能を実装します。

Vue のツリー表示については、プロジェクトが使用されています: エフェクト ダイアグラムがツリー...

VMware vSAN 入門概要

1. 背景1. vSphere の共有ストレージの背景を簡単に紹介するvSphere の重要な機能は...

vue cli で env を使用するガイド

目次序文紹介-公式設定例序文vueCli を使用してプロジェクトを開発したことのある方は、少しがっか...

MySQL 5.7.17 のインストールと設定のグラフィックチュートリアル

MySQL の機能: MySQL は、スウェーデンの会社 MySQL AB によって開発されたリレー...

ChromeとIEに対応したWMPに埋め込まれたHTMLの詳細な紹介

実際には、対応する記述方法は多数ありますが、最も一般的なのは object + embedded で...

フローチャートとUIフローの違い

UI デザインにおける多くの概念は言葉で言えば似ているように見えるかもしれませんが、実際には大きく異...

HTML テキストエスケープのヒント

今日、CSDN で HTML テキスト エスケープのちょっとしたトリックを見ましたが、とても簡単です...

PostgreSQL データベースにおける varchar、char、text の比較に関する簡単な説明

以下のように表示されます。名前説明する文字可変(n)、varchar(n)長さ制限あり、可変長文字(...

js を使用して USB スキャナー データを取得する方法

この記事では、USBバーコードスキャナデータを取得するjsの具体的なプロセスを参考までに紹介します。...

IDEA を使用して Tomcat を設定し、JSP ファイルを作成する方法

idea を使用して JSP ファイルを書き込む前に、jdk 環境 (ここでは説明しません) と対応...

画像を読み込むための JavaScript キャンバス

この記事では、画像を読み込むためのJavaScriptキャンバスの具体的なコードを参考までに紹介しま...