Rumah > hujung hadapan web > View.js > teks badan

Apakah kegunaan $emit dalam vue

WBOY
Lepaskan: 2022-03-17 11:31:41
asal
6300 orang telah melayarinya

Dalam vue, "$emit" digunakan untuk mencetuskan peristiwa pada tika semasa dan parameter berdekatan akan dihantar kepada panggilan balik pendengar, komponen anak boleh menggunakan "$emit" untuk mencetuskan peristiwa tersuai komponen induk , sintaksnya ialah: "vm.$emit( ​​​​event, [...args] )".

Apakah kegunaan $emit dalam vue

Persekitaran pengendalian artikel ini: sistem Windows 10, versi Vue 2.9.6, komputer DELL G3.

Apakah kegunaan $emit in vue

Gunakan $emit(eventName) in vue untuk mencetuskan acara

$emit(eventName) mencetuskan peristiwa pada tika semasa, dengan parameter tambahan akan dihantar kepada panggilan balik pendengar.

Gunakan $emit(eventName) untuk mencetuskan acara

Penjelasan dalam API:

vm.$emit( event, […args] )
Salin selepas log masuk

Penggunaan $emit in vue

1 boleh menggunakan prop untuk menghantar data kepada komponen kanak-kanak.

2. Subkomponen boleh menggunakan $emit untuk mencetuskan peristiwa tersuai komponen induk.

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

Contoh adalah seperti berikut:

Komponen kanak-kanak

<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>
Salin selepas log masuk

Komponen induk:

<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>
Salin selepas log masuk

[Syor berkaitan: "tutorial vue .js》]

Atas ialah kandungan terperinci Apakah kegunaan $emit dalam vue. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Label berkaitan:
vue
sumber:php.cn
Kenyataan Laman Web ini
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn
Tutorial Popular
Lagi>
Muat turun terkini
Lagi>
kesan web
Kod sumber laman web
Bahan laman web
Templat hujung hadapan