Heim >Web-Frontend >View.js >Was ist die Verwendung von $emit in Vue?

Was ist die Verwendung von $emit in Vue?

WBOY
WBOYOriginal
2022-03-17 11:31:416342Durchsuche

In Vue wird „$emit“ verwendet, um Ereignisse auf der aktuellen Instanz auszulösen, und benachbarte Parameter werden an den Listener-Rückruf übergeben; untergeordnete Komponenten können „$emit“ verwenden, um benutzerdefinierte Ereignisse der übergeordneten Komponente und der Syntax auszulösen ist „vm.$ emit( ​​​​event, […args] )“.

Was ist die Verwendung von $emit in Vue?

Die Betriebsumgebung dieses Artikels: Windows 10-System, Vue Version 2.9.6, DELL G3-Computer.

Was ist die Verwendung von $emit in Vue?

Verwenden Sie $emit(eventName) in Vue, um Ereignisse auszulösen.

$emit(eventName) löst Ereignisse in der aktuellen Instanz aus, und zusätzliche Parameter werden an den Listener-Rückruf übergeben.

Verwenden Sie $emit(eventName), um Ereignisse auszulösen

Erklärung in der API:

vm.$emit( event, […args] )

vue Über die Verwendung von $emit

1 Übergeordnete Komponenten können Requisiten verwenden, um Daten an untergeordnete Komponenten zu übergeben.

2. Untergeordnete Komponenten können $emit verwenden, um benutzerdefinierte Ereignisse von übergeordneten Komponenten auszulösen.

vm.$emit( event, arg ) //触发当前实例上的事件
vm.$on( event, fn );//监听event事件后运行 fn;

Das Beispiel lautet wie folgt:

Untergeordnete Komponente

<template>  
  <div class="train-city">  
    <h3>父组件传给子组件的toCity:{{sendData}}</h3>   
    <br/><button @click=&#39;select(`大连`)&#39;>点击此处将‘大连’发射给父组件</button>  
  </div>  
</template>  
<script>  
  export default {  
    name:&#39;trainCity&#39;,  
    props:[&#39;sendData&#39;], // 用来接收父组件传给子组件的数据  
    methods:{  
      select(val) {  
        let data = {  
          cityname: val  
        };  
        this.$emit(&#39;showCityName&#39;,data);//select事件触发后,自动触发showCityName事件  
      }  
    }  
  }  
</script>

Übergeordnete Komponente:

<template>  
    <div>父组件的toCity{{toCity}}</div>  
    <train-city @showCityName="updateCity" :sendData="toCity"></train-city>  
<template>  
<script>  
  import TrainCity from "./train-city";  
  export default {  
    name:&#39;index&#39;,  
    components: {TrainCity},  
    data () {  
      return {  
        toCity:"北京"  
      }  
    },  
    methods:{  
      updateCity(data){//触发子组件城市选择-选择城市的事件  
        this.toCity = data.cityname;//改变了父组件的值  
        console.log(&#39;toCity:&#39;+this.toCity)  
      }  
    }  
  }  
</script>

[Verwandte Empfehlung: „vue.js Tutorial“]

Das obige ist der detaillierte Inhalt vonWas ist die Verwendung von $emit in Vue?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn