Vueで$emitを使用する方法

php中世界最好的语言
リリース: 2018-06-08 14:18:46
オリジナル
1616 人が閲覧しました

今回は、Vue で $emit を使用する方法と、Vue で $emit を使用する際の注意点について説明します。以下は実践的なケースです。

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

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

vm.$emit( event, arg ) //触发当前实例上的事件
vm.$on( event, fn );//监听event事件后运行 fn;
ログイン後にコピー

例: 子コンポーネント:

<template>  
 <p class="train-city">  
  <span @click=&#39;select(`大连`)&#39;>大连</span>  
 </p>  
</template>  
<script>  
export default {  
 name:'trainCity',  
 methods:{  
  select(val) {  
   let data = {  
    cityname: val  
   };  
   this.$emit('showCityName',data);//select事件触发后,自动触发showCityName事件  
  }  
 }  
}  
</script>
ログイン後にコピー

親コンポーネント:

<template>  
  <trainCity @showCityName="updateCity" :index="goOrtoCity"></trainCity> //监听子组件的showCityName事件。  
<template>  
<script>  
export default {  
 name:'index',  
 data () {  
  return {  
   toCity:"北京"  
  }  
 }  
 methods:{  
  updateCity(data){//触发子组件城市选择-选择城市的事件   
   this.toCity = data.cityname;//改变了父组件的值  
   console.log('toCity:'+this.toCity)     
  }  
 }  
}  
</script>
ログイン後にコピー

結果は次のようになります:

toCity: Dalian

この記事の事例を読んだ後は、この方法を習得したと思います。さらに興味深い情報については、こちらをご覧ください。 、php中国語ウェブサイトの記事の他の関連トピックにもご注意ください。

推奨読書:

d.ts ファイルの自動補完の使用

実際のプロジェクトで Vue2.0 ラジオ選択相互排他を作成する方法

以上がVueで$emitを使用する方法の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

関連ラベル:
vue
ソース:php.cn
このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
最新の問題
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート